Syllabus
Course Code: MCA-20-24 Course Name: Elective-I - (iii) Compiler Design |
||
MODULE NO / UNIT | COURSE SYLLABUS CONTENTS OF MODULE | NOTES |
---|---|---|
1 | Compilers and Translators, Need of Translators, Tools used for compilation, Structure of Compiler, Single-Pass and Multi-Pass Compilers, Bootstrapping, Compiler Construction Tools, Phases of Compilation process, Classification of grammars. Lexical Analysis: Design, Finite Automata and Regular Expressions, Process of Lexical Analysis, Lexical Analyzer generators, Derivations and parse trees. |
|
2 | Parsing Techniques: Top down Parsing- Predictive Parsers, Left Recursion and its removal, Recursive Descent Parsers, LL Grammars. Bottom-up parsing: Shift Reduce Parsing, Operator Precedence Parsing, LR Parsers, LR grammars, Comparison of parsing methods, Parser Generators. |
|
3 | Semantic Analysis: Syntax-Directed Translation Schemes. Building Symbol Table, Data Structures for symbol table, representing scope information. An overview of Run-time Storage Administration. Error Detection and Recovery: Errors, Lexical-Phase Errors, Syntactic Phase Errors, Semantic Errors. |
|
4 | Intermediate Source Forms: Postfix Notation, Syntax Trees, Triples & Quadruples. Code Optimization: Potential cases of Code Optimization, Optimization of basic blocks, Local and Global optimizations, Code Improving Transformation. Code Generator: Issues in the design of a code generator. |