CS3501 Compiler Design Study Materials
Anna University – CS3501 Compiler Design Regulation 2021 Syllabus , Notes , Important Questions, Question Paper with Answers Previous Year Question Paper.
UNIT I INTRODUCTION TO COMPILERS & LEXICAL ANALYSIS CS3501 Compiler Design Syllabus
Introduction- Translators- Compilation and Interpretation- Language processors -The Phases of
Compiler – Lexical Analysis – Role of Lexical Analyzer – Input Buffering – Specification of Tokens
– Recognition of Tokens – Finite Automata – Regular Expressions to Automata NFA, DFA –
Minimizing DFA – Language for Specifying Lexical Analyzers – Lex tool.
UNIT II SYNTAX ANALYSIS CS3501 Compiler Design Notes
Role of Parser – Grammars – Context-free grammars – Writing a grammar Top Down Parsing –
General Strategies – Recursive Descent Parser Predictive Parser-LL(1) – Parser-Shift Reduce
Parser-LR Parser- LR (0)Item Construction of SLR Parsing Table – Introduction to LALR Parser –
Error Handling and Recovery in Syntax Analyzer-YACC tool – Design of a syntax Analyzer for a
Sample Language
UNIT III SYNTAX DIRECTED TRANSLATION & INTERMEDIATE CODE GENERATION CS3501 Compiler Design Important Questions
Syntax directed Definitions-Construction of Syntax Tree-Bottom-up Evaluation of S-Attribute
Definitions- Design of predictive translator – Type Systems-Specification of a simple type CheckerEquivalence of Type Expressions-Type Conversions. Intermediate Languages: Syntax Tree, Three
Address Code, Types and Declarations, Translation of Expressions, Type Checking, Back
patching.
UNIT IV RUN-TIME ENVIRONMENT AND CODE GENERATION CS3501 Compiler Design Question Bank
Runtime Environments – source language issues – Storage organization – Storage Allocation
Strategies: Static, Stack and Heap allocation – Parameter Passing-Symbol Tables – Dynamic
Storage Allocation – Issues in the Design of a code generator – Basic Blocks and Flow graphs –
Design of a simple Code Generator – Optimal Code Generation for Expressions– Dynamic
Programming Code Generation.
UNIT V CODE OPTIMIZATION CS3501 Compiler Design Question Paper
Principal Sources of Optimization – Peep-hole optimization – DAG- Optimization of Basic Blocks –
Global Data Flow Analysis – Efficient Data Flow Algorithm – Recent trends in Compiler Design
Syllabus | Click Here |
Notes | Click Here |
Important Questions | Click Here |
Previous Year Question Paper | Click Here |
Question Bank | Click Here |
TEXT BOOK CS3501 Compiler Design Notes
1. Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, “Compilers: Principles,
Techniques and Tools”, Second Edition, Pearson Education, 2009.
REFERENCES CS3501 Compiler Design Important Questions
1. Randy Allen, Ken Kennedy, Optimizing Compilers for Modern Architectures: A Dependence
based Approach, Morgan Kaufmann Publishers, 2002.
2. Steven S. Muchnick, Advanced Compiler Design and Implementation‖, Morgan Kaufmann
Publishers – Elsevier Science, India, Indian Reprint 2003.
3. Keith D Cooper and Linda Torczon, Engineering a Compiler‖, Morgan Kaufmann Publishers
Elsevier Science, 2004.
4. V. Raghavan, Principles of Compiler Design‖, Tata McGraw Hill Education Publishers, 2010.
5. Allen I. Holub, Compiler Design in C‖, Prentice-Hall Software Series, 1993.
Related Links
Anna University Syllabus Regulation 2021
Anna University Regulation 2021 Study Materials