Compiler Design Course Plan

INTRODUCTION

Introduction to Compiler – The structure of a compiler- Compiler- Lexical Analysis – Role of the lexical analysis – Input Buffering – Specification of tokens- Recognition of tokens – Lexical analyzer generator

LEXICAL ANALYSIS

Finite Automata – Regular Expression to an NFA – Optimization of DFA based pattern matchers- The Role of the Parser – Context-Free Grammars – Writing a Grammar -Top-Down Parsing – Recursive Descent Parsing – Predictive Parsing – Bottom-Up Parsing – Shift Reduce Parsing – Operator-Precedence Parsing

SYNTAX ANALYSIS

Introduction to LR parsing – SLR Parser – Canonical LR Parser – LALR Parser Generators – Intermediate Languages – Declarations – Control Flow -Boolean Expressions –Switch Statements – Back patching .

INTERMEDIATE CODE GENERATION

Issues in the Design of a Code Generator – The Target Language – Addresses in the target code – Basic Blocks and Flow Graphs – A Simple Code Generator – DAG Representation of Basic Blocks

CODE OPTIMIZATION AND RUN TIME ENVIRONMENTS

The Principal Sources of Optimization – Optimization of Basic Blocks – Peephole optimization- Loops in Flow Graphs –Runtime environments –Storage organizations-stack allocation of space – Access to nonlocal data on the stack

TEXT BOOK

  1. " Compilers principles, techniques and tools", Alfred Aho, Ravi Sethi, V.Jeffery Ullman D/ Pearson Education/ 2006

REFERENCES

  1. Allen I. Holub, Compiler Design in C, Prentice Hall of India, 2003
  2. Bennet J.P., Introduction to Compiler Techniques, Tata McGraw-Hill, 2nd Edition, 2003
  3. Henk Alblas and Albert Nymeyer,, Practice and Principles of Compiler Building with C, PHI, 2001.
Advertisements

Post your Comment

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s