Under Class: | 4th Semester [CSE(CY) Dept Anna University 2025 Regulation] |
Compiler Design - CS25C18 - Study Materials, Notes, Important Questions, Anna University Semester Question Paper PDF Download
Engineering - Compiler Design - CS25C18 Subject (under Anna University 4th Semester - CSE(CY) - Computer Science and Engineering (Cyber Security) Department Regulation 2025) - Study Materials, Written and lecture Notes, Important Questions, Semester Question Paper PDF Download

CS25C18:
Compiler
Design
Course
Objectives: This course focuses on analyze the
intricate process by which high-level programming languages are transformed
into low-level machine code and facilitates the synthesis of knowledge
regarding diverse compiler construction phases.
Basics Of
Compiler and Lexical Analysis: Language Processors –
Structure of a Compiler – Grouping of phases, Compiler construction tools –
Applications of Compiler Technology – Lexical Analysis – Role of Lexical
Analyzer – Input Buffering – Specification of Tokens – Recognition of Tokens –
Lexical-Analyzer Generator Lex
Suggested
Activities:
Identify the errors:
Present code snippets with lexical errors. Ask students how a lexical analyzer
would typically handle these errors.
Debugging:
Encourage them to experiment with different input strings and debug their Lex
specifications.
Top- Down
Parser: Parser – Role of parser - Context-Free
Grammars – Writing a Grammar – Top-Down Parsing – Recursive-Descent Parsing –
FIRST() and FOLLOW() – LL(1) Grammars – Non-recursive Predictive Parsing
Suggested
Activities:
Solve the exercises:
Encourage the student to find the FIRST() and FOLLOW().
Discussion:
Students prepare and present short videos explaining about the top down parser
Bottom -
Up Parser: Bottom-Up Parsing –Basics of LR
Parsing: Simple LR – Canonical LR – Look –Ahead LR – Example Problems of all LR
parser.
Suggested
Activities:
Poster Presentation:
Design posters illustrating the role of parsers using popular tools
Solving Exercises:
Give some example problems to construct the parsing tables.
Syntax Directed
Translation And Intermediate Code Generation:
Syntax Directed Translation – Syntax-Directed Definitions – Evaluation Orders
for SDD’s - – Intermediate Code Generation – Variants of syntax trees – Three
Address Code – Types and Declarations – Translation of Expressions – Type
Checking – Control Flow
Suggested
Activities:
Solving exercises:
Solve the example problems in implementation of three address code part.
Seminar :
All intermediate codes during compilation
Code
Generation and Storage Management: Issues in the design
of a code generation – The target Language – Addresses in the Target code – A
simple code Generator – Run-Time Environments: Storage organization – Stack
allocation of space – Heap Management – Basics of garbage collection.
Suggested
Activities:
Seminar:
Advanced topics in Garbage Collection.
Quiz:
Test understanding of storage allocation strategies.
Machine
Independent Optimization: Basic Blocks and Flow
Graphs –Optimization of Basic Blocks – Peephole Optimization – The Principal Sources
of Optimization – DAG – loops in flow graphs.
Suggested
Activities:
Diagram aid:
Draw the flow graphs for the optimization of basic blocks concept using any
recent tool.
Quiz:
Test concepts of basic blocks, flow graphs, and code optimization
Assessment
Weightage:
Weightage:Continuous
Assessment: 40%
•
Activities: 10%
•
Internal Test – 1&2: 30%
End
Semester Theory Examination: 60%
Mandated Activities
with marks:
Assignments
(30), Quiz (10), Project based learning (25), Flipped Classroom (10), Review of
GATE questions (25).
Internal Examinations:
TWO tests
References:
1.
Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Compilers:
Principles, Techniques, and Tools, 2nd Edition, Pearson, 2023.
2.
Keith D. Cooper, Linda Torczon, Engineering a Compiler, 3rd Edition, Morgan
Kaufmann, 2022.
3.
Chattopadhyay S. Compiler Design. 2nd ed. PHI Learning; 2022.