KEMBAR78
15csc13 System Software and Compiler Design | PDF | Assembly Language | Parsing
0% found this document useful (0 votes)
30 views2 pages

15csc13 System Software and Compiler Design

The document outlines the objectives and structure of the course 'System Software and Compiler Design', focusing on assemblers, linkers, loaders, code generation, optimization, and virtual machines. It details the course units, including topics such as lexical analysis, parsing, intermediate code generation, and the architecture of virtual machines. The document also lists the expected outcomes for students and provides references and textbooks for further reading.

Uploaded by

Cse Hod
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
30 views2 pages

15csc13 System Software and Compiler Design

The document outlines the objectives and structure of the course 'System Software and Compiler Design', focusing on assemblers, linkers, loaders, code generation, optimization, and virtual machines. It details the course units, including topics such as lexical analysis, parsing, intermediate code generation, and the architecture of virtual machines. The document also lists the expected outcomes for students and provides references and textbooks for further reading.

Uploaded by

Cse Hod
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

15CSC13 SYSTEM SOFTWARE AND COMPILER DESIGN

3 0 0 3
OBJECTIVES:
 To understand the issues related to design and implementation of assemblers
 To learn the role of linkers and loaders, working of macro processors
 To get introduced to virtual machines
 To learn concepts of lexical analysis and parsing
 To understand the intermediate code and object code generation
 To know the importance of code optimization

UNIT – I ASSEMBLERS, LOADERS AND LINKERS, MACROPROCESSORS 8


Machine Instructions and Programs – Assemblers – Basic Assembler Functions – Assembler Design
Options. Loaders and Linkers - Basic Loader Functions - Loader Design Options-Dynamic Linking and
Loading- Object files- Contents of an object file - Macroprocessors – Basic Macro Processor Functions -
Macro Processor Design Options

UNIT- II CODE GENERATION & OPTIMIZATION 9


Storage organization, Stack allocation space, Access to non-local data on the stack, Heap management -
Issues in code generation - Design of code generator – Register allocation and assignment - Basic blocks
and Flow graphs – Optimization of basic blocks – Principal sources of optimizations– Data flow analysis
– Peephole optimizations.

UNIT – III FRONT END OF COMPILERS 10


The structure of Compiler – Lexical analysis: Role of Lexical analyzer, Specification and recognition of
tokens, Syntax Analysis: Top down parsing, Bottom up parsing, LR Parsers: SLR, CLR, and LALR.

UNIT IV INTERMEDIATE CODE GENERATION 9


Syntax Directed Definitions, Evaluation orders for syntax directed definitions, Syntax
Directed Translation schemes, Intermediate languages : Three address code, Syntax
tree, Postfix code – Declarations – Type checking – Boolean Expression translation – Back patching

UNIT V VIRTUAL MACHINES 9


Introduction to Virtual Machines (VM) - Emulation - basic Interpretation – Threaded Interpretation –
binary translation. - VM – Object-Oriented VMs – Java VM Architecture – Common - Language
Infrastructure – Dynamic Class Loading - Profiling – Migration

OUTCOMES:
 To write assembly level programs and analyse loaders, linkers and macro processor design
 To describe the structure and architecture of virtual machines
 To design the front end of compiler
 To write programs for lexical analysis and parsing
 To explain concepts related to intermediate code generation and optimization

TEXT BOOKS:
1. Leland L. Beck, “System Software”, 3rd ed., Pearson Education, 1997.
2. James E Smith and Ravi Nair, “Virtual Machines”, Elsevier, 2005.
3. Alfred V. Aho, Monica S.Lam, Ravi Sethi, Jeffrey D.Ullman, “Compilers :
Principles, Techniques and Tools”, Second Edition, Pearson Education, 2008.

REFERENCES:
1. Srimanta Pal, “ Systems Programming “ , Oxford University Press, 2011.
2. John J.Donovan, “ “Systems Programming”, Tata McGraw-Hill, 1991.
3. V. Raghavan, “Principles of Compiler Design”, Tata Mc GrawHill Education
Publishers, 2010.
4. Allen I. Holub, “Compiler Design in C”, Prentice-Hall software series,1993

You might also like