0% found this document useful (0 votes)
14 views5 pages

CD_Micro

The document outlines the course structure for Compiler Design at Vasireddy Venkatadri Institute of Technology, detailing course objectives and content across five units. Key topics include compiler structure, lexical analysis, parsing techniques, intermediate code generation, and code optimization. The syllabus also lists essential textbooks and reference materials for further study.

Uploaded by

ksaikarthik5
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views5 pages

CD_Micro

The document outlines the course structure for Compiler Design at Vasireddy Venkatadri Institute of Technology, detailing course objectives and content across five units. Key topics include compiler structure, lexical analysis, parsing techniques, intermediate code generation, and code optimization. The syllabus also lists essential textbooks and reference materials for further study.

Uploaded by

ksaikarthik5
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

VASIREDDY VENKATADRI INSTITUTE OF TECHNOLOGY

NAMBUR-522508
ANDHRA PRADESH, INDIA

III- Year II- Semester Name of the Course L T P C


PC3202 Compiler Design 3 0 0 3

Course Objectives:
1. Impart the knowledge of Compilers and their structure
2. Learn to design Parsers, Language generators & Recognizers
3. Study of Parsers with equipped Translation Schemes
4. Understand storage allocations, IR and Code Generation
5. Learn and understand different techniques of Code Optimization

UNIT - I
Introduction to Compilers: Programming language basics, Language Translators,
Language Processing System, The structure of a Compiler, Passes of a compiler.
Lexical Analysis: The Role of the Lexical Analyzer, Input Buffering, Specification of
Tokens, Recognition of Tokens, Types of Finite Automata, Regular Expressions to Finite
Automata, Compiler construction tools, Lexical errors, The Lexical-Analyzer Generator.

UNIT - II
Grammars: Introduction, Context-Free Grammars, Writing a Grammar, Derivations, Parse
Trees, Ambiguous Grammars, Elimination of left recursion, left factoring.
Top-Down Parsing: Introduction to Syntax Analyzer, Classification of Parsers, Predictive
parsers.

UNIT - III
Bottom-Up Parsing: Introduction, Constructing Shift Reduce Parsing tables, LR parsers,
The canonical collection of LR(0) items, Constructing LR(0) Parsing tables, Constructing
SLR Parsing tables, The canonical collection of LR(1) items, Constructing Canonical LR
Parsing tables, Constructing LALR Parsing tables, YACC-automatic parser generator.
Semantic Analysis: Syntax-Directed Definitions, Evaluation Orders for SDD’s, Syntax-
Directed Translation Schemes.
UNIT - IV
Intermediate Code Generation: Syntax Tree, Three Address Code, Three Address Code
for various control flow statements.
Run-Time Environments: Storage Organization, Storage-allocation strategies, Access to
Nonlocal Data on the Stack, Introduction to Garbage Collection.
Code Generation: Issues in the Design of a Code Generator, Addressing modes, A Simple
Code Generator.

UNIT - V
Code Optimization: The Principal sources of optimizations, Loop optimizations, Peephole
optimization, Optimization of Basic blocks, Directed Acyclic Graph (DAG) representation of
basic block.

Text Books:
1. Compilers: Principles, Techniques and Tools, Second Edition, Alfred V. Aho,
MonicaS. Lam, Ravi Sethi, Jeffry D. Ullman, Pearson.

Reference Books:
1. Compiler Construction-Principles and Practice, Kenneth C Louden, Cengage
Learning.
2. The Theory and Practice of Compiler writing, J. P. Tremblay and P. G.
Sorenson,TMH
3. Lex &yacc – John R. Levine, Tony Mason, Doug Brown, O’reilly
Micro Syllabus of Compiler Design
III B.Tech II Semester

UNIT - I: Introduction to Compilers, Lexical Analysis ( Scanner )

Unit Module Micro Content


Programming language basics,
Language Translators, Language
Introduction to Compilers Processing System
The structure of a compiler, Passes of a
compiler
The Role of the Lexical Analyzer, Input
UNIT I Buffering
Specification of Tokens, Recognition of
Tokens
Lexical Analysis ( Scanner )
Types of Finite Automata, Regular
Expressions to Finite Automata
Compiler construction tools , Lexical
errors, The Lexical Analyzer Generator
UNIT - II: Grammars, Top-Down Parsing
Unit Module Micro Content
Introduction Noam Chomsky
Classification of grammars, CFG,
Generating Language From Grammars
Grammars Derivations( LMD&RMD), Generating
Parse Tress , Ambiguous Grammars
Elimination of left recursion, left
factoring
UNIT – II
Introduction to Syntax Analyzer or
Parser
Classification of Parsers, Recursive
Top-Down Parsing Descent Parser, Finding FIRST () and
FOLLOW () functions.
LL(1) Parser, Examples on
construction of LL(1) Parsers
UNIT - III: Bottom-Up Parsing, Semantic Analysis

Unit Module Micro Content


Introduction of Bottom-Up Parsing
Stack implementation of shift-reduce
parsing
UNIT – III Bottom-Up Parsing
Introduction to family of LR parsers
classification
LR(0) Parser & Example, conflicts
SLR Parser & Example , conflicts
CLR Parser & Example , conflicts
LALR Parser & Example
YACC-automatic parser generator.
Importance, Annotated parse tree,
inherited & synthesized attributes.
Types and declarations, Type
Semantic Analysis
conversions, Type checking
S-Attributed SDDs, L-Attributed SDDs,
Evaluation Orders for SDD's, Syntax-
Directed Translation Schemes
UNIT - IV: Intermediate-Code Generation, Run-Time Environments, Code
Generation
Unit Module Micro Content
Role of Intermediate Code generation
phase, Types of IR’s.
Intermediate-Code Syntax tree & Three-Address Code
Generation representations
TAC for various control flow
statements.
Storage Organization,
UNIT – IV Storage-allocation strategies
Run-Time Environments
Access to Nonlocal Data on the Stack,
Introduction to Garbage Collection,
Issues in the Design of a Code
Generator
Code Generation
Addressing modes
A Simple Code Generator
UNIT V : Code optimization

Unit Module Micro Content


Role of optimization Phase, The
Principal Sources of optimizations.
Loop optimization, Peephole
Code Optimization
UNIT- V optimization.
Optimization of Basic Blocks, The
directed acyclic graph (DAG)
representation of basic block.

****

You might also like