目录介绍
第1 章 概论
1.1 为什么学习编译
1.2 什么叫编译程序
1.3 编译过程概述
1.4 编译程序的构成
1.5 其他与编译有关的概念和技术
1.6 如何开发编译程序
1.7 编译系统以及其他相关程序
第2 章 词法分析
2.1 词法分析器的设计考虑
2.2 词法分析器的一种实现方法
2.3 单词的表示形式
2.4 单词的识别与有限自动机
2.5 词法分析的自动生成器Lex
第3 章 程序语言的文法描述
3.1 文法及语言的形式定义
3.2 文法的性质和其他表示
3.3 文法的分类
3.4 文法的等价变换
3.5 语法分析概述
第4 章 自顶向下的语法分析
4.1 自顶向下语法分析的一般方法
4.2 LL(1) 文法及其分析
4.3 递归下降分析技术
4.4 预测分析技术
4.5 LL(1) 分析中的错误处理
第5 章 自底向上的语法分析
5.1 自底向上语法分析概述
5.2 算符优先分析方法
5.3 LR 分析方法
5.4 LALR 分析器的生成工具YACC
第6 章 符号表的组织和管理
6.1 符号表的作用
6.2 符号表的主要属性及其作用
6.3 符号表的组织结构
6.4 名字的作用范围
第7 章 运行时环境
7.1 程序运行的基本概念
7.2 运行时存储空间的组织和管理
7.3 静态运行时环境
7.4 栈式运行时环境
7.5 堆式运行时环境
7.6 面向对象语言的运行时环境
7.7 参数传递机制
第8 章 属性文法和语义分析
8.1 语义分析概况
8.2 属性与属性文法
8.3 属性的计算
8.4 数据类型与类型检查
第9 章 语法制导的中间代码翻译
9.1 中间语言
9.2 声明语句的翻译
9.3 赋值语句的翻译
9.4 基本控制结构的翻译
9.5 转向语句的翻译
第10 章 目标代码生成
10.1 代码生成器设计的基本问题
10.2 虚拟计算机模型
10.3 语法制导的目标代码生成
10.4 基本块和待用信息
10.5 一个简单代码生成器
10.6 代码生成技术小结
10.7 基于寄存器的虚拟机和栈式虚拟机
第11 章 代码优化
11.1 代码优化的概念
11.2 代码优化的基本技术
11.3 局部优化
11.4 机器代码优化窥孔技术
11.5 代码优化的其他技术简介
参考文献