A Language Processing System, Cousins of Compiler, Phases of a compiler, grouping of the phases into passes, Bootstrapping , Compiler Construction Tool.
Lexical Analysis : The Role of the Lexical Analyzer , Input Buffering , Specification of Tokens , Strings and Languages, Operation on Languages, Regular Expressions , Recognition of Tokens ,Transition Diagrams,lexical analyzer generator LEX, Design of a Lexical Analyzer generator.

Introduction to Syntax Analyzer, Formal definition of CFG, Parse Trees and Derivations, Elimination of Ambiguity, Elimination of Left Recursion, Left Factoring, Top down Parsing, Bottom up Parsing, Operator-Precedence Parsing, Construction of Simple LR Parsing Table, More Powerful LR Parsers, Using ambiguous grammars, Parser Generators.

Syntax-Directed Definitions, Evaluation Orders for SDD's, Construction of Syntax Trees, Parser Stack Implementation of Postfix SDT's, Bottom-Up Parsing of L-Attributed SDD's.

Direct Acyclic Graph, Three Address Code, Type Expressions, Type Equivalence, Declarations, Type Checking, Type Conversions, Over Loading of Functions and Operators,Type Inference and Polymorphic Functions, Boolean expressions, Switch - Statements, Procedures, structure pointers.
Run-Time Environments : Storage Organization, Stack Allocation of Space, Access to Non-local Data on the Stack, Heap Management .

The principal sources of optimization, Issues in the Design of a Code Generation, The Target Language, Address in the Target Code, Basic blocks and flow graphs, Optimization of Basic blocks, A simple code generator, Register allocation and assignment .