Saturday, December 11, 2010

CS2352 PRINCIPLES OF COMPILER DESIGN ANNA UNIVERSITY SYLLABUS

CS2352 PRINCIPLES OF COMPILER DESIGN

UNIT I LEXICAL ANALYSIS

Introduction to Compiling- Compilers-Analysis of the source program-The phases- Cousins-The grouping of phases-Compiler construction tools. The role of the lexical analyzer- Input buffering-Specification of tokens-Recognition of tokens-A language for specifying lexical analyzer.

UNIT II SYNTAX ANALYSIS and RUN-TIME ENVIRONMENTS

Syntax Analysis- The role of the parser-Context-free grammars-Writing a grammar-Topdown parsing-Bottom-up Parsing-LR parsers-Constructing an SLR(1) parsing table. Type Checking- Type Systems-Specification of a simple type checker. Run-Time Environments-Source language issues-Storage organization-Storage-allocation strategies.

UNIT III INTERMEDIATE CODE GENERATION

Intermediate languages-Declarations-Assignment statements - Boolean expressions- Case statements- Backpatching-Procedure calls

UNIT IV CODE GENERATION

Issues in the design of a code generator- The target machine-Run-time storage management-Basic blocks and flow graphs- Next-use information-A simple codegenerator-Register allocation and assignment-The dag representation of basic blocks - Generating code from dags.

UNIT V CODE OPTIMIZATION

Introduction-The principle sources of optimization-Peephole optimization- Optimization of basic blocks-Loops in flow graphs- Introduction to global data-flow analysis-Code improving transformations.

TEXT BOOK:
1. Alfred V. Aho, Ravi Sethi Jeffrey D. Ullman, “Compilers- Principles, Techniques, and Tools”, Pearson Education Asia, 2007.

REFERENCES:
1. David Galles, “Modern Compiler Design”, Pearson Education Asia, 2007
2. Steven S. Muchnick, “Advanced Compiler Design & Implementation”,Morgan Kaufmann Pulishers, 2000.
3. C. N. Fisher and R. J. LeBlanc “Crafting a Compiler with C”, Pearson Education, 2000.

0 comments:

Post a Comment