JNTUK/JNTUGV Compiler Design Important Questions
Unit I: Lexical Analysis & Syntax Analysis
- Structure of a Compiler & Bootstrapping
- Lexical Analysis & Regular Expressions
- The Role of the Lexical Analyzer & Parser
- Left Recursion & Left Factoring
- Differences between NFA & DFA
- Phases of Compiler Design
Unit II: Top-Down Parsing & Bottom-Up Parsing
- SLR Parsers & Construction of SLR Parsing Tables
- Recursive vs Non-recursive Parsing
- LL(1) Grammars & Examples
- Shift Reduce Parsing & Dangling Else Ambiguity
- Types of LR Parsers, LR vs LL Parsers
- Handling Ambiguous Grammar with LR Parsers
- Construction of CLR(1), SLR, and LALR Parsing Tables
Unit III: Syntax Directed Translation & Intermediate Code Generation
- Variants of Syntax Trees & Time Types
- Types of Intermediate Code
- Syntax-Directed Definition
- Implementing L-Attributed SDD's
- Intermediate Code for Procedures & Translation of Expressions
- Control Flow
Unit IV: Code Optimization
- Peephole Optimization & Flow Graphs
- Optimization of Basic Blocks
- Loop Optimization
- Principle Sources of Optimization
Unit V: Run Time Environments & Code Generation
- Register Allocation and Assignment
- Code Generation Algorithm
- Run Time Storage Allocation & Procedure Calls
- Issues in the Design of a Code Generator
- Storage Organization