0% found this document useful (0 votes)
6 views

Compiler Lab

The document outlines the objectives and outcomes of the Compiler Design Lab course, which includes familiarity with compiler writing tools, implementation of compiler phases, and optimization techniques. Students will engage in practical experiments such as developing lexical analyzers, implementing parsers, and generating assembly language programs. The course aims to enhance students' understanding of control flow, data flow analysis, and storage allocation strategies.

Uploaded by

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

Compiler Lab

The document outlines the objectives and outcomes of the Compiler Design Lab course, which includes familiarity with compiler writing tools, implementation of compiler phases, and optimization techniques. Students will engage in practical experiments such as developing lexical analyzers, implementing parsers, and generating assembly language programs. The course aims to enhance students' understanding of control flow, data flow analysis, and storage allocation strategies.

Uploaded by

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

SUB

19CSC - COMPILER DESIGN LAB


CODE
L T P C
3 2 0 4
COURSE OBJECTIVES:
Upon completion of this course, the students will be familiar with,
 Compiler writing tools.
 Implement the different Phases of compiler
 Control flow and data flow analysis
 Storage allocation strategies
 Simple optimization techniques

COURSE OUTCOMES:
Upon completion of this course, the students will be able to,
CO1: Implement the different Phases of compiler using tools
CO2: Analyze the control flow and data flow of a typical program
CO3: Illustrate storage allocation strategies
CO4: Optimize a given program
CO5: Generate an assembly language program equivalent to a source language program

COURSE CONTENT:

LIST OF EXPERIMENTS 45 hrs

1. Token Separation and Symbol Table Manipulation.


2. Develop a lexical analyzer to recognize a few patterns in C. (Ex. identifiers, constants,
comments, operators etc.)
3. Implementation of Lexical Analyzer using Lex Tool
4. Implement a recursive descent parser for an expression grammar that generates arithmetic
expressions with digits, +, -, / and *.
5. Implement SLR parser for a given grammar
6. Generate YACC specification for a few syntactic categories.
7. Implementation of Calculator using LEX and YACC
8. Syntax tree creation
9. Three address code generation from assignment statement with array references & while
statements
10. Construction of flow graph from list of three address statements.
11. Implement control flow analysis and Data flow Analysis
12. Translation of three address code to assembly language with fixed number of registers.
13. Stack and heap management at run time.
14. Implementation of Simple Code Optimization Techniques (Constant Folding., etc.)
15. Implement the back end of the compiler which takes the three address code and produces the
8086 assembly language instructions that can be assembled and run using a 8086 assembler.
The target assembly instructions can be simple move, add, sub, jump. Also simple
addressing modes are used.

Practical: 45 Periods Total: 45 Periods

MAPPING OF PROGRAMME OUTCOMES WITH COURSE OUTCOMES <Times New roman>Font Size, 8.

Programme Outcomes / Programme Specific Outcomes


Mapping PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3

K3 K4 K5 K5 K5 K5 K2 A5 A5 K5 K3 A3 K5 K5 K5

CO1
Course Outcomes

CO2 /
CO3
CO4
CO5
Average
Correlation Level

You might also like