JNTUH CSE-AIML COMPILER DESIGN SYLLABUS

JNTUH CSE-AIML COMPILER DESIGN SYLLABUS

Prerequisites
1. A course on “Formal Languages and Automata Theory”.
2. A course on “Computer Organization and architecture”.
3. A course on “Computer Programming and Data Structures”.
Course Objectives:
 Introduce the major concepts of language translation and compiler design and impart the knowledge of practical skills necessary for constructing a compiler.
 Topics include phases of compiler, parsing, syntax directd translation, type checking use of symbol tables, code optimization techniques, intermediate code generation, code generation and data flow analysis.
Course Outcomes:
 Demonstrate the ability to design a compiler given a set of language features.
 Demonstrate the the knowledge of patterns, tokens & regular expressions for lexical analysis.
 Acquire skills in using lex tool & yacc tool for devleoping a scanner and parser.
 Design and implement LL and LR parsers
 Design algorithms to do code optimization in order to improve the performance of a program in terms of space and time complexity.
 Design algorithms to generate machine code.
UNIT – I
Introduction: The structure of a compiler, the science of building a compiler, programming language basics Lexical Analysis: The Role of the Lexical Analyzer, Input Buffering, Recognition of Tokens, The Lexical-Analyzer Generator Lex, Finite Automata, From Regular Expressions to Automata, Design of a Lexical-Analyzer Generator, Optimization of DFA-Based Pattern Matchers.
UNIT – II
Syntax Analysis: Introduction, Context-Free Grammars, Writing a Grammar, Top-Down Parsing,
Bottom-Up Parsing, Introduction to LR Parsing: Simple LR, More Powerful LR Parsers, Using
Ambiguous Grammars and Parser Generators.
UNIT – III
Syntax-Directed Translation: Syntax-Directed Definitions, Evaluation Orders for SDD’s, Applications of Syntax-Directed Translation, Syntax-Directed Translation Schemes, Implementing L-Attributed SDD’s. Intermediate-Code Generation: Variants of Syntax Trees, Three-Address Code, Types and Declarations, Type Checking, Control Flow, Switch-Statements, Intermediate Code for Procedures.
UNIT – IV
Run-Time Environments: Stack Allocation of Space, Access to Nonlocal Data on the Stack, Heap Management, Introduction to Garbage Collection, Introduction to Trace-Based Collection.Code Generation: Issues in the Design of a Code Generator, The Target Language, Addresses in the Target Code, Basic Blocks and Flow Graphs, Optimization of Basic Blocks, A Simple Code Generator, Peephole Optimization, Register Allocation and Assignment, Dynamic Programming Code-Generation.

UNIT – V 
Machine-Independent Optimization: The Principal Sources of Optimization, Introduction to Data-Flow Analysis, Foundations of Data-Flow Analysis, Constant Propagation, Partial-Redundancy Elimination, Loops in Flow Graphs.
TEXT BOOK:
1. Compilers: Principles, Techniques and Tools, Second Edition, Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffry D. Ullman.
REFERENCE BOOKS:
1. Lex & Yacc – John R. Levine, Tony Mason, Doug Brown, O’reilly
2. Compiler Construction, Louden, Thomson.

CSE-AIML

SEMESTER SUBJECT CODE SUBJECT Lession Plan Lecturer Notes & Question Bank SYLLABUS ABOUT TUTOR
I MA101BS Mathematics – I Click Here
I AP102BS Applied Physics Click Here
I CS103ES Programming for Problem Solving Click Here
I ME104ES Engineering Graphics Click Here
I AP105BS Applied Physics Lab Click Here
I CS106ES Programming for Problem Solving Lab Click Here
I MC109ES Environmental Science Click Here
II MA201BS Mathematics – II Click Here
II CH202BS Chemistry Click Here
II EE203ES Basic Electrical Engineering Click Here
II ME205ES Engineering Workshop Click Here
II EN205HS English Click Here
II CH206BS Engineering Chemistry Lab Click Here
II EN207HS English Language and Communication Skills Lab Click Here
II EE208ES Basic Electrical Engineering Lab Click Here
II-I CS310PC Discrete Mathematics Click Here
II-I CS302PC Data Structures Click Here
II-I MA313BS Mathematical and Statistical Foundations Click Here
II-I CS304PC Computer Organization and Architecture Click Here
II-I CS311PC Python Programming Click Here
II-I SM306MS Business Economics & Financial Analysis Click Here
II-I CS307PC Data Structures Lab Click Here
II-I CS312PC Python Programming Lab Click Here
II-I MC309 Gender Sensitization Lab Click Here
II-II CS416PC Formal Language and Automata Theory Click Here
II-II CS417PC Software Engineering Click Here
II-II CS403PC Operating Systems Click Here
II-II CS404PC Database Management Systems Click Here
II-II CS412PC Object Oriented Programming using Java Click Here
II-II CS406PC Operating Systems Lab Click Here
II-II CS407PC Database Management Systems Lab Click Here
II-II CS408PC Java Programming Lab Click Here
II-II MC409 Constitution of India Click Here
III-I Design and Analysis of Algorithms Click Here
III-I Machine Learning Click Here
III-I Computer Networks Click Here
III-I Compiler Design Click Here
III-I Graph Theory (PE1) Click Here
III-I Introduction to Data Science(PE1) Click Here
III-I Web Programming(PE1) Click Here
III-I Image Processing(PE1) Click Here
III-I Computer Graphics(PE1) Click Here
III-I Software Testing Methodologies(PE2) Click Here
III-I Information Retrieval Systems(PE2) VIJAYANAND S
III-I Pattern Recognition(PE2) Click Here
III-I Computer Vision and Robotics(PE2) Click Here Click Here
III-I Data Warehousing and Business Intelligence(PE2) Click Here
III-I Machine Learning Lab Click Here
III-I Computer Networks Lab Click Here
III-I Advanced Communication Skills Lab Click Here
III-I Intellectual Property Rights Click Here
III-II Artificial Intelligence Click Here Click Here
III-II DevOps Click Here Click Here
III-II Natural Language Processing Click Here Click Here
III-II Internet of Things(PE3) Click Here Click Here
III-II Data Mining(PE3) Click Here Click Here
III-II Scripting Languages(PE3) Click Here Click Here
III-II Mobile Application Development(PE3) Click Here Click Here
III-II Cryptography and Network Security(PE3) Click Here Click Here
III-II Artificial Intelligence and Natural Language Processing Lab Click Here Click Here
III-II DevOps Lab Click Here Click Here
IV-I Neural Networks & Deep Learning Click Here Click Here
IV-I Reinforcement Learning Click Here Click Here
IV-I Quantum Computing(PE4) Click Here Click Here
IV-I Expert Systems(PE4) Click Here Click Here
IV-I Cloud Computing(PE4) Click Here Click Here
IV-I Game Theory(PE4) Click Here Click Here
IV-I Mobile Computing(PE4) Click Here Click Here
IV-I Expert Systems(PE4) Click Here Click Here
IV-I Cloud Computing(PE4) Click Here Click Here
IV-I Game Theory(PE4) Click Here Click Here
IV-I Mobile Computing(PE4) Click Here Click Here
IV-I Social Network Analysis(PE5) Click Here Click Here
IV-I Federated Machine Learning(PE5) Click Here Click Here
IV-I Augmented Reality & Virtual Reality(PE5) Click Here Click Here
IV-I Web Security(PE5) Click Here Click Here
IV-I Ad-hoc & Sensor Networks Click Here Click Here
IV-I Deep Learning Lab Click Here Click Here
IV-II Organizational Behaviour Click Here Click Here
IV-II Speech and Video Processing(PE6) Click Here Click Here
IV-II Robotics Process Automation(PE6) Click Here Click Here
IV-II Randomized Algorithms(PE6) Click Here Click Here
IV-II Cognitive Computing(PE6) Click Here Click Here
IV-II Semantic Web(PE6) Click Here Click Here

Add Comment

Your email address will not be published. Required fields are marked *

Style switcher RESET
Body styles
Color settings
Link color
Menu color
User color
Background pattern
Background image