SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

Similar documents
SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN

Day Hour Timing pm am am am

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN. Tech park ( 7 th floor)

KALASALINGAM UNIVERSITY ANAND NAGAR, KRISHNAN KOIL DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING ODD SEMESTER COURSE PLAN

About the Authors... iii Introduction... xvii. Chapter 1: System Software... 1

G.PULLAIH COLLEGE OF ENGINEERING & TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

Evaluation Scheme L T P Total Credit Theory Mid Sem Exam

INSTITUTE OF AERONAUTICAL ENGINEERING (AUTONOMOUS)

LECTURE NOTES ON COMPILER DESIGN P a g e 2

SYED AMMAL ENGINEERING COLLEGE (An ISO 9001:2008 Certified Institution) Dr. E.M. Abdullah Campus, Ramanathapuram

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

Day Hour Timing pm pm am am

Compiler Design Overview. Compiler Design 1

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING Subject Name: CS2352 Principles of Compiler Design Year/Sem : III/VI

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

GUJARAT TECHNOLOGICAL UNIVERSITY

BIRLA INSTITUTE OF TECHNOLOGY AND SCIENCE, Pilani Pilani Campus Instruction Division

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

A B C D E. Hour Timing Hour Timing Hour Timing Hour Timing Hour Timing & &

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR / EVEN SEMESTER

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN

GUJARAT TECHNOLOGICAL UNIVERSITY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN. Sec. Name Office Office hour Mail id

2068 (I) Attempt all questions.

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

Name of chapter & details

Compilers for Modern Architectures Course Syllabus, Spring 2015

CSCI 565 Compiler Design and Implementation Spring 2014

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer. Compiler Design

Introduction to Compiler Construction

CST-402(T): Language Processors

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

Formal Languages and Compilers Lecture I: Introduction to Compilers

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTER SCIENCE AND ENGINEERING DEPARTMENT OF CSE COURSE PLAN COURSE CODE

Principles of Programming Languages [PLP-2015] Detailed Syllabus

Introduction to Compiler Construction

DEPARTMENT OF INFORMATION TECHNOLOGY AUTOMATA AND COMPILER DESIGN. B.Tech-IT, III Year -I Sem

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER APPLICATIONS COURSE PLAN

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

Question Bank. 10CS63:Compiler Design

Gujarat Technological University Sankalchand Patel College of Engineering, Visnagar B.E. Semester VII (CE) July-Nov Compiler Design (170701)

COMPILER DESIGN LEXICAL ANALYSIS, PARSING

DEPARTMENT OF INFORMATION TECHNOLOGY / COMPUTER SCIENCE AND ENGINEERING UNIT -1-INTRODUCTION TO COMPILERS 2 MARK QUESTIONS

SYLLABUS UNIT - I UNIT - II UNIT - III UNIT - IV CHAPTER - 1 : INTRODUCTION CHAPTER - 4 : SYNTAX AX-DIRECTED TRANSLATION TION CHAPTER - 7 : STORA

FACULTY OF ENGINEERING AND TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN. Hour Timing Hour Timing

HOLY ANGEL UNIVERSITY COLLEGE OF INFORMATION AND COMMUNICATIONS TECHNOLOGY COMPILER THEORY COURSE SYLLABUS

CS606- compiler instruction Solved MCQS From Midterm Papers

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTM ENT OF CSE COURSE PLAN SECTION DAY ORDER PERIOD TIMINGS

Philadelphia University Faculty of Information Technology Department of Computer Science --- Semester, 2007/2008. Course Syllabus

4. An interpreter is a program that

PRINCIPLES OF COMPILER DESIGN

INSTITUTE OF AERONAUTICAL ENGINEERING

CA Compiler Construction

CS131: Programming Languages and Compilers. Spring 2017

VALLIAMMAI ENGINEERING COLLEGE

CS Compiler Construction West Virginia fall semester 2014 August 18, 2014 syllabus 1.0

PSD3A Principles of Compiler Design Unit : I-V. PSD3A- Principles of Compiler Design

The analysis part breaks up the source program into constituent pieces and creates an intermediate representation of the source program.

Compiler Design (40-414)

Faculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN A B C D

CS 406/534 Compiler Construction Putting It All Together

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

Compilers. Computer Science 431

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER APPLICATIONS COURSE PLAN


SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTER SCIENCE AND ENGINEERING DEPARTMENT OF CSE COURSE PLAN

Theory: 4 Hrs/Week Max. University Theory Examination: 60 Marks Max. Time for Theory Exam.: 3 Hrs. Continuous Internal Assessment: 40 Marks

Translator Design CRN Course Administration CMSC 4173 Spring 2017

FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

Faculty of Electrical Engineering, Mathematics, and Computer Science Delft University of Technology

CS 2210 Sample Midterm. 1. Determine if each of the following claims is true (T) or false (F).

Compiling Regular Expressions COMP360

Torben./Egidius Mogensen. Introduction. to Compiler Design. ^ Springer

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN

CS426 Compiler Construction Fall 2006

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN A, B & C

1. Explain the input buffer scheme for scanning the source program. How the use of sentinels can improve its performance? Describe in detail.

Downloaded from Page 1. LR Parsing

MidTerm Papers Solved MCQS with Reference (1 to 22 lectures)

: SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF TELECOMMUNICATION COURSE PLAN

Translator Design CRN Course Administration CMSC 4173 Spring 2018

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY

1. (a) What are the closure properties of Regular sets? Explain. (b) Briefly explain the logical phases of a compiler model. [8+8]

VIVA QUESTIONS WITH ANSWERS

1. The output of lexical analyser is a) A set of RE b) Syntax Tree c) Set of Tokens d) String Character

MANIPAL INSTITUTE OF TECHNOLOGY (Constituent Institute of MANIPAL University) MANIPAL

PESIT Bangalore South Campus Department of MCA Course Information for. System Programming (13MCA24)

TABLE OF CONTENTS S.No DATE TOPIC PAGE No UNIT I LEXICAL ANALYSIS 1 Introduction to Compiling-Compilers 6 2 Analysis of the source program 7 3 The

CMPE 152 Compiler Design

Transcription:

Course Code : CS0301 Course Title : Compiler Design Semester : V Course Time : July Dec 2011 DAY SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTING DEPARTMENT OF CSE COURSE PLAN SECTION A B C D E Hour Timing Hour Timing Hour Timing Hour Timing Hour Timing 1 1 8.45-9.35 3 10.35-11.25 5 1.30-2.20 2 4 11.25-12.15 2,6 9.35-10.25, 2.20-3.10 6 2.20-3.10 2 9.35-10.25 3 2 9.35-10.25 5 1.30-2.20 2 9.35-10.25 3 10.35-11.25 3,5 4 1 8.45-9.35, 1 8.45-9.35 8.45-9.35, 5 1,3 4 11.25-12.15 4 11.25-12.15 10.35-11.25 10.35-11.25, 1.30-2.20 Location : S.R.M.E.C Faculty Details SEC NAME OFFICE OFFICE HOUR MAIL ID A Mrs. Jeya 8 th Floor Mon - Fri jeya@ktr.srmuniv.ac.in B Mr. C. Jothi kumar 7 th Floor Mon Fri jothikumar@ktr.srmuniv.ac.in C New Staff 2 Mon Fri D Mr. M. Rajasekaran 7 th Floor Mon Fri rajasekaranm@ktr.srmuniv.ac.in E Mr. M. Raja 7 th Floor Mon - Fri rajam@ktr.srmuniv.ac.in Required Text Books: 1. Alfred V. Aho, Ravi Sethi & Jeffrey. D. Ullman, Compilers Principles, Techniques & Tools,Pearson Education, third edition, 2007. 2. D.M.Dhamdhere, "System Programming and Operating Systems", 2nd Edition., Tata Mcgraw Hill,1995

Web resources http://lambda.uta.edu/cse5317/notes/notes.html www.cs.bilkent.edu.tr/~ilyas/courses/cs416/ Prerequisite : CS0202 Principles of Programming Languages Objectives CS0204 Theory of Computation 1. To study the concepts of Assembler, Macro Processor, Loader and Linker 2. To learn about the various phases of compiler and syntax analysis 3. To learn the various parsing techniques 4. To learn the semantic analysis, translation of statements 5. To learn about Generating and Optimizing codes Assessment Test Schedule Cycle Test I : 10 Marks Surprise Test : 5 Marks Cycle Test II : 10 Marks Model Exam : 20 Marks Attendance : 5 Marks S.No. DATE TEST TOPICS DURATION 1 Cycle Test - I Unit I & II 2 periods 2 Cycle Test - II Unit III & IV 2 periods 3 Model Exam All 5 units 3 Hrs Outcomes Students who have successfully completed this course will have full understanding of the following concepts Course outcome Program outcome To learn An ability to understand the basic functioning of various system software

* The various system software concepts and tools * The design aspects of a typical Compiler * To develop a comprehensive compiler for a given language To analyze and be able to design a compiler To implement various parsing, conversion, optimization and generation algorithms for the design of a compiler Detailed Session Plan ASSEMBLER,MACRO,LOADER & LINKER Assembler: Overview of the assembly process - Design of two pass assembler- Single pass assembler - Macros : Macro definition and usage- schematics for macro expansion - Design of a Macro pre- processor - Design of a Macro assembler ; Introduction to Loaders and Linkers. Sessio n No. Topics to be covered Time (min) Ref Teaching Method Testing Method 1 Introduction to System Software: Assemblers, Macro, Loader, Linker, Editor, Compiler etc. 2 Assemblers, overview of assembly process, Mnemonic codes / practical 3 Design of two pass assembler / practical 4 Single pass asssembler 5 Macro, Definition, expansion, usage / practical 6 Macro Processor Design, Examples of Macros, 7 Design of macro preprocessor, macro assembler, 8 Loaders, introduction, process of loading Relocatable loader 50 1,3 BB / practical 9 Linkers, introduction, process of linking 50 1,3 BB / practical

INTRODUCTION TO COMPILERS Compiler: Introduction - Analysis of the source program - phases of a compiler - Compiler construction tools- Lexical analysis - Role of the lexical analyzer - Specification of tokens Recognition of tokens -Lexical analyzer generators- Design aspects of Lexical Analyzer. 10 Introduction to Compiling, Phases of Compiler Discussion 11 Illustration of compiling process by statement example Illustration by examples 12 Compiler construction tools Test 13 Lexical analysis, Strings, operations on strings,tokens, lexemes, 14 Lexical analyzer generator, design aspects 15 Grammers and Languages, Types of grammers 16 Finite State Automata, DFA,NDFA, conversion Problem solving, surprise test 17 Specification of tokens, Regular grammer to DFA Problem solving, surprise test 18 SYNTAX ANALYSIS PARSING Syntax Analysis: Role of the parser - Context free grammars - Top-down parsing: shift reducepredictive parsing; Bottom-up parsing: Operator precedence, LR parsers (SLR, Canonical LR,LALR) - Parser generators- Design aspects of Parser Introduction to Parsing, Top down and Bottom up 19 Context Free Grammers, Ambiguity in grammars, examples 20 Shift Reduce Parsing 21 Operator Precedence Parsing, Precedence Matrix and Precedence functions Surprise Test 22 Problems in Top down parsing: Left

Recursion, Backtracking 23 FIRST and FOLLOW procedures 24 Predictive parsing, Parsing table construction 25 Simple LR Parsing, LR(0) items, parsing table generation Test Brain storming 26 Canonical LR, LookAhead LR parsing, Test Brain storming 27 Parser generators, design aspects Test Brain storming SEMANTIC ANALYSIS TRANSLATION & RUNTIME STORAGE Syntax-directed translation: Syntax-directed definitions - S-attributed definition - L-attributed definition -Top-down and bottom-up translation- Type checking - Type systems -Specification of a type checker; Run time environment - Source language issues -Storage organization Storage allocation strategies - Access to non-local names - Parameter passing - Symbol tables- Design aspects of Syntax Directed Translation 28 Syntax-directed translation: Syntax-directed definitions, synthesized and inherited attributes 29 S-attributed definition - L-attributed definition 30 Top-down and bottom-up translation- Type checking 31 32 33 Type systems -Specification of a type checker Run time environment -Source language issues, activation record Storage organization Storage allocation strategies,, 34 Access to non-local names - Parameter passing 35 Symbol tables- data structures used 36 Design aspects of Syntax Directed Translation

CODE GENERATION & OPTIMIZATION Intermediate code generation: Intermediate languages - Declaration - Statement - Boolean expression - Procedure calls - Code optimization : Introduction - Sources of optimization - Introduction to data flow analysis- Code generator : Issues in the design of a code generator- the target machine- A simple code generator- Design aspects of Code Optimizer. 37 Intermediate Codes- Syntax tree,quadruple,triple,3address code,prefix,postfix 38 Translation of assignment statements 39 Translation of Boolean expressions, Backpatching 40 Translation of Declaration, procedure calls 41 Code Optimization- Local optimization techniques Redundant code, constant folding, dead code, basic blocks 42 Loop optimization Frequency reduction, Strength reduction, index variable elimination 43 Data flow analysis, peephole optimization 44 Code Generator issues, target machine 45 A simple Code generator, design aspects BB Black Board PP Power Point