出版者的话
序言
前言
教学建议
第1章 引论
1.1 程序设计语言的发展
1.1.1 程序设计语言
1.1.2 翻译程序
1.2 为什么需要编译程序
1.3 编译程序的工作过程
1.3.1 分析部分
1.3.2 综合部分
1.4 编译程序的结构
1.4.1 编译程序的典型结构
1.4.2 编译程序的前端和后端
1.4.3 编译程序的分遍
1.4.4 源程序中的错误及出错处理
1.5 编译程序的组织方式
1.6 编译程序的其他技术
1.6.1 编译程序的自展技术
1.6.2 编译程序的移植技术
1.6.3 编译程序的自动化技术
1.6.4 程序的可再入性
1.7 翻译程序的编写系统
1.8 并行编译程序
1.9 小结
习题
第2章 形式语言概论
2.1 语言成分
2.2 文法和语言
2.2.1 产生式文法
2.2.2 上下文无关文法
2.2.3 推导与直接推导
2.3 文法的分类
2.3.1 文法分类
2.3.2 文法分类的意义
2.3.3 文法举例
2.4 语言和语法
2.4.1 句型、句子和语言
2.4.2 语法树
2.4.3 产生式树和产生式图
2.5 文法和语言的一些特性
2.5.1 无用非终结符号
2.5.2 不可达文法符号
2.5.3 可空非终结符
2.5.4 最左推导、最右推导和规范推导
2.5.5 二义性
2.6 分析方法简介
2.6.1 自顶向下分析方法
2.6.2 确定的自顶向下分析方法
2.6.3 自底向上分析方法
2.6.4 文法在内存中的表示
2.7 小结
习题
第3章 有穷自动机
第4章 词法分析
第5章 自顶向下语法分析
第6章 自底向上分析和优先分析方法
第7章 自底向上的LR(k)分析方法
第8章 语法制导翻译法
第9章 运行时的存储组织与管理
第10章 符号表
第11章 优化
第12章 代码生成
附录 PL/0编译程序源程序
参考文献