SPCC
Assemblers
Macros and Macro Processor
Introduction to System Software
Goals of system software
Introduction to Assembler, Macro processor, Loader, Linker, Compiler, Interpreter, Device Drivers, Operating system, Editors, Debuggers.
Concept of System Software
Assembler Design
Elements of Assembly Language programming
Single pass Assembler Design
Two pass assembler Design for Hypothetical / X86 family processor
Introduction
Macro definition and call, Features
Macro facility
Simple
Parameterized
Conditional
Nested
Macro Processor
Data structures
Design of single pass
ARGTAB
Loaders and Linkers
Functions of loaders
Relocation and Linking concept
Introduction
Different loading schemes
Relocating loader
Direct Linking Loader
Dynamic linking and loading
Compilers
Analysis Phase
Synthesis phase
Lexical Analysis
Syntax Analysis
Role of Finite State Automata
Design of Lexical analyser
Role of Context Free Grammar in Syntax analysis
Types of Parsers
Top down parser- LL(1)
Bottom up parser
Operator precedence parser
SLR
Basic block and flow graph
Code Generation
Intermediate Code Generation
Code Optimization:
Types of Intermediate codes
Postfix notation
Syntax tree
Three address codes
Triples
Quadruples
Need and sources of optimization
Machine Dependent and Machine Independent
Issues in the design
Algorithm