Loading...
System programming and compiler construction( including labs)
Main Author: | |
---|---|
Other Authors: | |
Format: | Printed Book |
Published: |
New Delhi
Dreamtech
2015
|
Table of Contents:
- Chapter 1: System Software 1.1 Concept of System Software 1.2 Inroduction to Various Systems Programs 1.3 Assembler 1.4 Loader and Linker 1.5 Macro Processors 1.6 Compiler 1.7 Interpreters 1.8 Operating System 1.9 Device Drivers Chapter 2: Assemblers 2.1 Basic Functions of Assemblers 2.2 General Design Procedure 2.3 Design of Assembler and Overview of Assembly Process 2.4 Single Pass Assembler for IBM PC 2.5 Design of Multipass Assembler 2.6 IBM 360/370 Processors 2.7 Comparison of Single-Pass and Two-Pass Assemblers 2.8 Output Interface of Assembler Chapter 3: Macro and Macro Processors 3.1 Macro and Macro Processors 3.2 Macro Instruction-Definition and Call 3.3 Features of Macro Facility 3.4 Design of Two-pass Macro Processors Chapter 4: Loaders and Linkers 4.1 Loader and Linkers 4.2 Loader Schemes 4.3 More into Relocation and Linking 4.4 Design of Loader and Linker 4.5 Design of Absolute Loaders 4.6 Design of Direct-Linking Loaders Chapter 5: Software Tool 5.1 Steps Involved in Program Development 5.2 Software Tools 5.3 Tools Used in Program Development 5.4 Editors Chapter 6: Compiler 6.1 Overview of Translation Process 6.2 Introduction to Compiler 6.3 The Phases of a Compiler 6.4 Difference between an Interpreter, Assembler, and Compiler 6.5 Cousins of the Compiler Chapter 7: Lexical Analysis 7.1 Role of Lexical Analyzer 7.2 Input Buffering 7.3 Specification of Tokens 7.4 Recognition of Tokens 7.5 Designing a Lexical Analyzer Generator 7.6 Pattern Matching Using NFA 7.7 Optimizing of DFA Chapter 8: Syntax Analysis 8.1 Role of Parser 8.2 Top-Down Parsing 8.3 Recursive Descent and Predictive Parser 8.4 LL Parsers 8.5 Bottom-Up Parser 8.6 Simple Precedence Parsing 8.7 Operator Precedence Parsing 8.8 Precedence Functions 8.9 LR Parsers 8.10 LR(0) Parsing 8.11 SLR(1) Parsers 8.12 LR(1) Parsers 8.13 LALR(1) Parser 8.14 Parser Generators 8.15 Using Ambiguous Grammar with LR Parsers Chapter 9: Syntax-Directed Translation 9.1 Introduction to Syntax-Directed Translation 9.2 Syntax-Directed Definitions 9.3 Inherited and Synthesized Attributes 9.4 Evaluation Order of SDD 9.5 L-Attributed Definitions 9.6 Syntax-Directed Translation Scheme 9.7 Error Detection and Recovery Chapter 10: Intermediate Code Generation 10.1 Intermediate Languages 10.2 Intermedia Code for Assignment Statements 10.3 Intermediate Code Generation for Arrays 10.4 Intermediate Code for Boolean Expressions 10.5 Back Patching 10.6 Conditional and Iterative Control Flow 10.7 Code for Switch Statements 10.8 Computing l- and r-Values 10.9 Procedure Calls 10.10 Translation of Mixed-Mode Expressions Chapter 11: Code Generation 11.1 Major Tasks in Code Generation 11.2 Design Issues of a Code Generator 11.3 Generating Code for the Target Machine 11.4 Runtime Storage Management for Code Generation 11.5 Basic Blocks and Flow Graphs 11.6 Code geneartion Algorithm 11.7 The DAG Representation of Basic Blocks 11.8 Generating Code from DAGs 11.9 Dynamic Programming Code-Generation Algorithm 11.10 Code-Generator Generators Chapter 12: Code Optimization 12.1 Classification of Compiler Optimization 12.2 Principal Sources of Optimization for Compiler 12.3 Global Data Flow Analysis 12.4 Loops in Flow Graphs 12.5 Optimizations of Basic Blocks 12.6 Peephole Optimization Chapter 13: Run-Time Storage 13.1 Source Language Issues 13.2 Storage Organization 13.3 Storage Allocation Strategies 13.4 Management of Variable-Length Blocks 13.5 Passing Parameters 13.6 Symbol Table 13.7 Introduction to Garbage Collection and Compaction 13.8 Dynamic Storage Allocation Techniques Chapter 14: Compiler-Compilers 14.1 Java Compiler Environment 14.2 YACC Compiler-Compiler