Compiler Design

Live Class: 02 Apr 2020

Enrolled: 2

Duration: 12 Hours

About Course

Programming languages are the primary tools for all computer programmers.Compiler is used to translate computer code from a programming language to machine code to an executable program.

Compilers are complex software systems. The software architecture of a compiler is quite general. A large variety of applications can be modelled after a compiler. After the course you should have an understanding,based on knowledge of the underlying machine architecture, the limitations and efficiency of various design techniques of compiler implementation.

Learning Outcome

Introduction to Compiler

•  Introduction to Compiler, single and multi-pass compilers
•  Translators
•  Phases of Compilers
•  Compiler writing tools
•  Bootstrapping & Backpatching
•  Role of Lexical Analyzer
•  Specification and Recognition of tokens
•  Finite automata
•   Implementation of lexical analyzer Tool for lexical analyzer LEX

Syntax and Parsing

•  Context free grammars
•  Bottom-up parsing and Top down parsing
•  Elimination of left recursion
•  Recursive descent parsing
•  Operator precedence parsing
•  LR parsers
•  Construction of SLR parse tables for ambiguous grammar

Syntax Translation

•  Synthesized and inherited attributes
•  Dependency graph
•  Construction of syntax trees
•  Bottom up and top down evaluation of attributes
•  Three address codes,quadruples,triples and indirect triples
•  Translation of assignment statements and control flow
•   Boolean expression and Procedure Calls

Runtime Environment

•  Storage organization
•  Activation trees and records
•  Allocation strategies
•  Parameter passing symbol table
•  Dynamic storage allocation

Code Optimization - Part I

•  Basic blocks and flow graphs
•  Optimization of basic blocks
•  Loop optimization
•  Global data flow analysis

Code Optimization - Part II

•  Loop invariant computations
•   Issue in the design of Code generator
•  Register allocation
•   Simple code generator

₹4000 62% off

Course Offerings

  • Instructor Led Live sessions
  • Clarify doubts during session
  • Access Session Recordings
  • Attend on mobile and Tablet
  • Project reviews by Instructor
  • Direct Messages
  • Feedback from Instructor
  • Full lifetime Resources
  • Certificate of Completion
  • Employability opportunity