Modern Compiler Design
Addison-Wesley Educational Publishers Inc (Verlag)
978-1-57676-105-2 (ISBN)
- Titel ist leider vergriffen;
keine Neuauflage - Artikel merken
A practical overview of all important theoretical topics mixed with many examples. This book includes an integrated Java project that leads to a rich understanding of the issues involved in compiler design.
1 Introduction
Why Study Compilers?
Basic Compiler Design
Phases of Compilation
2 Lexical Analysis
File Processing and Tokens
Deterministic Finite Automata
Regular Expressions
JavaCC -- A Lexical Analyzer and Parser Generator
Creating a Lexical Analyzer for simpleJav using JavaCC
Lex - A Lexical Analyzer Generator
Exercises
3 Context-Free Grammars
Context-Free Grammar Defintion
Derivations
CFG Shorthand
Parse Trees
Ambiguous Grammars
Extended Bakus Naur Form
Exercisees
4 Top-Down Parsing
Recursive Descent Parsers
Grammars That Are Not LL(1)
LL(k) Parsers
JavaCC -- A LL(k) Parser Generator
Writing a Parser for simpleJava Using JavaCC
Exercises
5 Bottom-up Parsing
Rightmost Parsers
Creating LR Parse Tables
Yacc - Yet ANother Compiler Compiler
Exercises
6 Abstract Syntax Trees
Abstract Syntax Tree Definition
Implementing Trees in Java
JavaCC Actions
Creating an Abstract Syntax Tree for simpleJava using JavaCC
Working with Abstract Syntax Trees in C
Exercises
7 Semantic Analysis
Semantic Errors
Environments
Type Checking
Semantic Analyzer Overview
Implementing a Semantic Analyzer for simpleJava in Java
Semantic Analyzer Project in Java
Implementing a Semantic Analyzer for simpleJava in C
Exercises
8 Creating Assembly Trees
Implementing Variables
Abstract Assembly
Creating Abstract Assembly
Creating Abstract Assembly Trees in Java
Building Assembly Trees for simpleJava in Java
Creating Abstract Assembly Trees in C
Exercises
9 Code Genearation
Target Assembly Code
Simple Tiling
More Sophisticated Tiling
Extended Example
Code Generation in Java
Code Generation in C
Code Generation For x86
Exercises
10 Memory Management
Static Storage
Heap-Based Storage
Programmer-Controlled Deallocation
Automatic Deallocation -- Garbage Collection
Creating a Programmer-Controlled Memory Manager For simpleJava
Creating a Garbage Collector for simpleJava
Exercises
11Object-Oriented Extensions
Methods in Classes
Inheritance
Access Control
Function and Method Overloading
Recursive Classes
Virtual Methods
Appedix A simpleJava Reference Manual
Tokens
Comments
Program Structure
Expressions
Statements
Built-in Functions
Sample simpleJava Programs
Appendix B How Lexical Analyzer Generators Work
Non-Deterministic Finite Automata
Converting a Regular Expression into a NFA
Converting a NFA Into a DFA
State Minimization of Deterministic Finte Automata
Multiple Types of Final States
Converting a DFA unto Code
Extended Example
Exercises
Erscheint lt. Verlag | 25.5.2005 |
---|---|
Verlagsort | New Jersey |
Sprache | englisch |
Maße | 216 x 276 mm |
Themenwelt | Informatik ► Theorie / Studium ► Compilerbau |
ISBN-10 | 1-57676-105-3 / 1576761053 |
ISBN-13 | 978-1-57676-105-2 / 9781576761052 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich