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

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

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

LECTURE NOTES ON COMPILER DESIGN P a g e 2

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

G.PULLAIH COLLEGE OF ENGINEERING & TECHNOLOGY

Evaluation Scheme L T P Total Credit Theory Mid Sem Exam

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

GUJARAT TECHNOLOGICAL UNIVERSITY

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

GUJARAT TECHNOLOGICAL UNIVERSITY

INSTITUTE OF AERONAUTICAL ENGINEERING (AUTONOMOUS)

CST-402(T): Language Processors

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

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

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

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

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

Principles of Programming Languages [PLP-2015] Detailed Syllabus

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

Name of chapter & details

Compiler Design Overview. Compiler Design 1

2068 (I) Attempt all questions.

VALLIAMMAI ENGINEERING COLLEGE

Compiler Design Aug 1996

Question Bank. 10CS63:Compiler Design

4. An interpreter is a program that

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

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

Compilers for Modern Architectures Course Syllabus, Spring 2015

COMPILER DESIGN LEXICAL ANALYSIS, PARSING

CSCI 565 Compiler Design and Implementation Spring 2014

Roll No. :... Invigilator's Signature :. CS/B.Tech(CSE)/SEM-7/CS-701/ LANGUAGE PROCESSOR. Time Allotted : 3 Hours Full Marks : 70

INSTITUTE OF AERONAUTICAL ENGINEERING

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

Compilers. Computer Science 431

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

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur

Day Hour Timing pm am am am

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

QUESTIONS RELATED TO UNIT I, II And III

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

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

CS606- compiler instruction Solved MCQS From Midterm Papers

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

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

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

PRINCIPLES OF COMPILER DESIGN

VIVA QUESTIONS WITH ANSWERS

Formal Languages and Compilers Lecture I: Introduction to Compilers

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

QUESTION BANK CHAPTER 1 : OVERVIEW OF SYSTEM SOFTWARE. CHAPTER 2: Overview of Language Processors. CHAPTER 3: Assemblers

CS131: Programming Languages and Compilers. Spring 2017

Translator Design CRN Course Administration CMSC 4173 Spring 2018

Day Hour Timing pm pm am am

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

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

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

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY

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

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

Compiler Design (40-414)

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

CS 406/534 Compiler Construction Putting It All Together

CJT^jL rafting Cm ompiler

List of Figures. About the Authors. Acknowledgments

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

Downloaded from Page 1. LR Parsing


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

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

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

Compiler Construction

SYSTEMS PROGRAMMING. Srimanta Pal. Associate Professor Indian Statistical Institute Kolkata OXFORD UNIVERSITY PRESS

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

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

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

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

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

Introduction to Syntax Analysis. Compiler Design Syntax Analysis s.l. dr. ing. Ciprian-Bogdan Chirila

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

CMPE 152 Compiler Design

CS143 Handout 20 Summer 2011 July 15 th, 2011 CS143 Practice Midterm and Solution

CMPE 152 Compiler Design

Introduction to Compiler Construction

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY

CS5363 Final Review. cs5363 1

Final Term Papers 2013

Parsing. Handle, viable prefix, items, closures, goto s LR(k): SLR(1), LR(1), LALR(1)

Compiler Construction

CMPE 152 Compiler Design

Compiler Code Generation COMP360

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

Lecture 8: Deterministic Bottom-Up Parsing

CSCI Compiler Design

Introduction to Compiler Construction

Life Cycle of Source Program - Compiler Design

SRM UNIVERSITY 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

Transcription:

SRM UNIVERSITY FACULTY OF ENGINEERING AND TECHNOLOGY SCHOOL OF COMPUTER SCIENCE AND ENGINEERING COURSE PLAN Course Code : CS1014 Semester: VI Course Title : System Software and Compiler Design Course Time: Feb-May 2016 SECTION DAY ORDER PERIOD TIMINGS 1 6 1.25 pm 2.15 pm Group - I 3 5 11.35 am- 12.25 pm 4 7 2.20 pm-3.10 pm 1 6 1.25 pm 2.15 pm Group - II 3 9 4.05 pm-4.55 pm 4 3 9.45 am-10.35 am Location : Faculty Details Gro up II I Name OFFICE OFFICE HOURS Mail id T. Senthil Kumar K. Sathyapriya Dorathi Jayaseeli R. Jeya R. Vidhya K. Deeba A.L. Amutha Dr. R. Annie Uthra K.Senthilkumar C. Jothi Kumar Sravan Yadav Kanmani Sivagar senthilkumar.g@ktr.srmuniv.ac.in sathyapriya.k@ktr.srmuniv.ac.in dorathijayaseeli.jd@ktr.srmuniv.ac.in jeya.r@ktr.srmuniv.ac.in vidhya.r@ktr.srmuniv.ac.in deeba.k@ktr.srmuniv.ac.in amutha.al@ktr.srmuniv.ac.in annie.u@ktr.srmuniv.ac.in senthilkumar.k@ktr.srmuniv.ac.in jothikumar.c@ktr.srmuniv.ac.in sravanyadav.n@ktr.srmuniv.ac.in kanmani.s@ktr.srmuniv.ac.in

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/ Objectives 1. To study the features and design aspects of assemblers, Macro, loaders and linkers 2. To learn the design principles of a Compiler 3. To learn the various parsing techniques and different levels of translation 4. To learn how to optimize and effectively generate machine codes Assessment Details Cycle I Surprise I Cycle II Attendance Model Exam : 10 Marks : 5 Marks : 10 Marks : 5 Marks : 20 Marks Schedule S.No. DATE TEST TOPICS DURATION 1 Cycle - I Unit III & IV 2 periods 2 Cycle - II Unit 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 To learn * The various system software concepts and tools * The design aspects of a typical Compiler * To develop a comprehensive compiler for a given language Program outcome An ability to understand the basic functioning of various system software 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 UNIT III - COMPILERS : GRAMMARS & AUTOMATA (8 Hours) Languages Grammars Types of grammars Context free grammar - regular expression - Recognizing of patterns - finite automation (deterministic & non deterministic) Conversion of NDFA to DFA - Conversion of regular expression of NDFA Thompson s construction- minimization of NDFA - Derivation - parse tree - ambiguity Lexical analysis- handles - token specification - design of lexical analysis (LEX) - Automatic generation of lexical analyzer - input buffering - A language for specifying lexical analyzers - implementation of lexical analyzer. Introduction to Compiling, Phases of Discussion 1 Compiler Grammers and Languages, Types of Illustration by examples 2 grammars regular expression - Recognizing of Illustration by examples 3 patterns Finite State Automata, DFA,NDFA, 4 Thompson s construction minimization of NDFA, Conversion of 5 NDFA to DFA Derivation, parse tree, ambiguity, Lexical 6 analysis, handles, token specification 7 Design of lexical analysis (LEX) 8 Automatic generation of lexical analyzer, input buffering, A language for specifying lexical analyzers, implementation of lexical analyzer 9 Problem solving, surprise test UNIT IV - SYNTAX ANALYSIS PARSING (11 Hours) Definition - role of parsers - top down parsing - bottom-up parsing - Left recursion - left factoring - Handle pruning, Shift reduce parsing - operator precedence parsing FIRST- FOLLOW- LEADING- TRAILING- Predictive parsing - recursive descent parsing. LR parsing LR (0) items - SLR parsing Canonical LR - LALR parsing - generation of LALR - Ambiguous grammars - error recovery Introduction to Parsing, Top down and Bottom up 10 11 Problems in Top down parsing: Left Recursion, Left factoring Handle pruning, Shift Reduce Parsing 12 LEADING and TRAILING procedure, Surprise 13 Operator Precedence Parsing, Precedence Matrix and Precedence functions 14 FIRST and FOLLOW procedures 15 16 17 Predictive parsing, Parsing table construction Simple LR Parsing, LR(0) items, parsing table generation

18 Canonical LR, LookAhead LR parsing, 19 Ambiguous grammars - error recovery UNIT V - SYNTAX DIRECTED TRANSLATION & CODE OPTIMIZATION (12Hours) Intermediate Languages - prefix - postfix - Quadruple - triple - indirect triples syntax tree- Evaluation of expression - three-address code- Synthesized attributes Inherited attributes Conversion of statements- Boolean expressions Backpatching - Declaration - CASE statements CODE OPTIMIZATION: Local optimization- Loop Optimization techniques DAG Dominators- Flow graphs Storage allocations- Peephole optimization Issues in Code Generation. Intermediate Languages: prefix, postfix, 20 21 22 23 24 25 26 27 28 29 30 31 Quadruple, triple, indirect triples syntax tree, Evaluation of expression, three-address code Syntax-directed translation: Syntaxdirected definitions, synthesized and inherited attributes Translation of assignment statements Translation of Boolean expressions, Backpatching Translation of Declaration, procedure calls Translation of CASE statements Loop optimization Frequency reduction, Strength reduction, index variable elimination DAG, Dominators, Flow graphs Storage allocations peephole optimization Issues in Code Generation,, UNIT I - ASSEMBLERS & MACROS (7 Hours) Overview of Language processors Assemblers: Design of two pass assemblers - single pass assemblers MACRO: Macro definition- macro call macro expansion- nested macro advanced macro facilities- Design of Macroprocessor. 32 Overview of Language processors 33 Assemblers, overview of assembly process, Mnemonic codes 34 Design of two pass assembler 35 Single pass assembler 36 Macro, Definition, expansion, usage 37 Nested macro advanced macro facilities Macro Processor Design, Examples of 38 Macros

UNIT II - LINKERS & LOADERS (7 Hours) Relocation and linking concepts Design of linker self relocating programs linking in MS-DOS overlays DYNAMIC LINKING : Loaders Absolute loaders- relocating loaders Sessi on No. Topics to be covered Time (min) Ref Teaching Method ing Method Relocation and linking concepts 39 40 Design of linker / practical 41 self relocating programs / practical 42 linking in MS-DOS overlays 43 Loaders / practical Absolute loaders, 44 45 relocating loaders, Signature of Faculty Member Head of the Department