is a method of memory allocation by which the program is subdivided into equal portions, or pages and core is subdivided into equal portions or blocks.
allows multiple programs to reside in separate areas of core at the time.
consists of those addresses that may be generated by a processor during execution of a computation.
to recognize the major constructs of the language and to call the appropriate action routines that will generate the intermediate form or matrix for these constructs.
to parse the source program into the basic elements or tokens of the language.