第1章 引言
1.1 编译器的定义
1.2 编译器应用
1.3 编译器的各个阶段
1.4 编译器设计的难点
1.5 编译过程——示例
1.6 小结
练习
第2章 词法分析
2.1 词法分析器的任务
2.2 记号的规范
2.3 记号识别
2.3.1 不确定的有限自动机
2.3.2 确定的有限自动机
2.3.3 NFA到DFA的转换
2.4 NFA的正则表达式
2.5 词法分析的工具——Lex
2.6 小结
练习
第3章 语法分析
3.1 解析器的功能
3.2 错误处理
3.3 文法
3.3.1 符号约定
3.3.2 推导
3.3.3 二义性
3.3.4 左递归
3.4 自上而下的分析
3.4.1 递归下降分析
3.4.2 递归的预测分析
3.4.3 非递归的预测分析——LL(k)分析
3.5 自下而上的分析
3.5.1 算符优先的分析
3.5.2 建立优先关系
3.5.3 错误恢复
3.6 LR分析
3.6.1 LR分析方法
3.6.2 LR分析算法
3.6.3 构造LR分析表
3.6.4 处理LR分析的二义性
3.6.5 LR分析中的错误恢复
3.7 LALR解析器的生成器——yacc
3.8 语法制导翻译
3.9 小结
练习
第4章 类型检查
4.1 静态和动态检查的比较
……
第5章 符号表
第6章 运行时环境管理
第7章 中间代码生成
第8章 目标代码生成
第9章 代码优化