IT 403 : Fundamentals of Information Processing

Cr : 4
L - T - P    :    3 - 0 - 2

Syllabus

Course Plan for Unit 3

Unit 3 : Compiler Construction Techniques, Lexical Analyzer, Parser, Intermediate Code Generation & Optimization, etc.

No of lectures per week : 1
Total no of lectures : 12

Lecture Plan :
Sl.No. Topic No.of
Lectures
1 Characteristics of HLL, overview of a compiler's task, phases of compilation task 1
2 Lexical Analysis (refer to coverage in IT401);
An operator precedence parsing scheme without considering a grammar, advantages and limitations.
Exercise: Implement a desk calculator using operator precedence parsing.
2
3 CFG description of programming languages; parse trees, derivation sequences, ambiguity, top-down and bottom-up parsing 1
4 Automatic creation of an operator precedence table from a CFG 1
5 Top down Parsing: Recursive descent parser; predictive parser;
construction of a LL(1) parsing table; LL(K) grammar
Exercise: Implement the FIRST and FOLLOW algorithms required for LL(1) parsing table construction
2
6 Bottom-up parsing: LR parsing; SLR parsing table creation; CLR and LALR parsing table creation
Exercise: Implement the SLR parsing table creation method.
2
7 Intermediate code generation: Syntax directed translation;
Intermediate code formats;
1
8 Storage allocation and Symbol table 1
9 Code optimization: Basic block, flow-graphs, loop detection,
loop optimization, data flow analysis
2
10 Code generation: Efficient use of registers, instructions 1

Evaluation Plan:

Home Assignments 15
Mid Term 15
Lab Assignments 25
End Term 30

Question Bank:

(Click)

Books/References:

  1. Aho, A V Shethi and Ullman J D : Compiler Design
  2. A C Holub, Compiler Design in C: PHI 1993