Chapter 1 Introduction
1.1 Language and Mankind
1.2 Language and Computer
1.3 Compilation of Programming Languages
1.4 Number of Passes of Compiler
1.5 An Example of Compilation of a Statement
1.6 Organization of the Book
Problems
References
Chapter 2 Grammars and Languages
2.1 Motivation of the Chapter
2.2 Preliminary Knowledge
2.3 Grammar
2.4 Language
2.5 Language Generated by a Grammar
2.6 Turing Machine
2.7 Issues Concerning Grammars and Languages
Problems
References
Chapter 3 Finite State Automata and Regular
Languages
3.1 Motivations of the Chapter
3.2 Languages, Grammars and Automata
3.3 Deterministic Finite Automata
3.4 Nondeterministic Finite Automata
3.5 Regular Expressions
3.6 Regular Grammar
3.7 Kleene's and Moore's Theorems
3.8 Pumping Theorems and Closure Properties for LREG
3.9 Applications of Finite Automata
3.10 Variants of Finite Automata
Problems
References
Chapter 4 Lexical Analysis
4.1 Motivation of the Chapter
4.2 Lexical Analyzer
4.2.1 Role of Lexical Analyzer
4.2.2 Identifier Analysis
4.2.3 Handling of Constants
4.2.4 Structure of Lexical Analyzer
4.3 Output of Lexical Analyzer
4.4 Error Handling
Problems
References
Chapter 5 Push-Down Automata and Context-Free Languages
5.1 Motivation of the Chapter
5.2 Push-Down Automata
5.3 Context-Free Languages (LCF)
5.4 Pumping Theorems for Context-Free Languages
5.5 Push-Down Automata and Context-Free Languages
5.6 Applications of Context-Free Languages
5.7 Turing Machines
5.8 Turing Machines as Language Accepters
5.9 Equivalence of Various Turing Machines
5.10 Recursively Enumerable Languages (LRE)
5.11 Context-Sensitive Languages (LCS)
5.12 Hierarchy of Machines, Grammars and Languages
5.12.1 Hierarchy of Machines
5.12.2 Hierarchy of Grammars and Languages
5.13 Relations Among Machines, Languages and Grammars
Problems
References
Chapter 6 Context-Free Grammars
6.1 Motivation of the Chapter
6.2 Context-Free Grammars
6.3 Characteristics of Context-Free Grammars
Problems
……
Chapter 7 Syntax Analysis
Chapter 8 Attribute Grammars and Analysis
Chapter 9 Algebraic Method of Compiler Design
Chapter 10 Generation of Intermediate Code
Chapter 11 Debugging and Optimization
Chapter 12 Storage Management
Chapter 13 Generation of objece code
Chapter 14 Compilation of object-oriented Languages
Chapter 15 Compilation of parallel Languages
Chapter 16 Compilation of Grid Computing
Index