Preview Banner Image
MCA Syllabi Elective Course IV - MCA10205 - C. Compiler Design

Unit I
Introduction on the phase of the complier - Lexical Analysis, Regular Expression, Non deterministic Automata, Deterministic Automata equivalent to NFA's. Minimizing the states of DFA, Implementation of Lexical Analyzer.
Unit II
Syntax Analysis - Top down Parsing Concepts, Recursive Descent Parsing, Predictive Parsers, Non recursive Pedictive Parsing - Bottom Up Parsing, Handle pruning, Shift reduce parsing - Operator Predence Parsing - Error recovery in Parsing, LR Parsers, Parser Generators - YACC.
Unit III
Intermediate Code Generation: Syntax directed Definitions, Construction of Syntax trees - Top down Translation, Bottom up Evaluation of inherited Attributed, Recursive Evaluators, Assigning Space at Complier Construction time - Type checking - Overloading of functions and operators Polymorphic function.
Unit IV
Storage Organization : Storage Organization, Storage Allocation Strategies, Parameter Passing, Symbol tables, Dynamic Storage Allocation, Intermediate Languages - Representation of Declarations, Assignment Statement, Boolean Expression, Back patching, Procedure calls.
Unit V
Code Generation and Optimization: Design of the code generators, Runtime storage Management, Basic blocks and flow graphs, Register Allocation and Assignment, DAG representation of Basic blocks, Peephole optimization, Code optimization - The principle sources of optimization, Optimization of basic blocks, Global data flow Analysis, Loop optimizations.
Text Book(s)
1. Alfred Aho, Ravi Sethi, Jeffy D.Ullman, "Compilers - Principles, Techniques and Tools", 1986, Addison Wesley.
2. Dhamdhere D.M., "Compiler Construction Principles and Practice", 1981, Macmillan India.

References
1. Reinhard Wilhlm, Director Mauser, 'Compiler Design", 1995, Addison Wesley.