第1章编译程序概论 1
1.1 引 论 1
1.2 编译器简介 2
1.3 编译过程概述 11
1.4 编译程序的结构 13
1.5 编译程序生成与构造 15
1.6 习 题 16
2.1 扫描处理 17
第2章词法分析 17
2.2 词法分析器的要求 19
2.3 状态转换图与词法分析器设计 21
2.4 正则表达式 24
2.5 有穷自动机 28
2.6 从正则表达式到DFA 33
2.7 词法分析器的自动构造工具 41
2.8 习 题 49
第3章文法和程序语言描述 51
3.1 文法的概念 51
3.2 文法和语言的形式定义 52
3.3 形式语言概述 58
3.4 上下文无关文法及语法树 59
3.5 句型的分析 67
3.6 习 题 70
第4章语法分析——自上而下分析 72
4.1 自上而下的分析思想 73
4.2 递归下降分析法 88
4.3 LL(1)文法分析 94
4.4 自上而下分析程序中的错误校正 107
4.5 习 题 109
第5章语法分析——自下而上优先分析法 113
5.1 自下而上优先分析法概述 115
5.2 简单优先分析法 123
5.3 算符优先分析法 126
5.4 习 题 148
第6章语法分析程序的自动构造 151
6.1 LR分析概述 152
6.2 LR(0)分析 157
6.3 SLR(1)分析 171
6.4 LR(1)分析 178
6.5 YACC:产生LALR(1)分析程序的生成器 188
6.6 自下而上分析程序中的错误校正 192
6.7 习 题 194
第7章语法制导翻译和中间代码生成 197
7.1 语法制导翻译概述 198
7.2 各种常见中间语言形式 202
7.3 简单赋值语句到四元式的翻译 209
7.4 布尔表达式到四元式的翻译 212
7.5 控制语句的中间代码生成 216
7.6 数组和结构的翻译 219
7.7 过程和函数调用的代码生成 228
7.8 习 题 232
第8章符号表 235
8.1 符号表和符号 236
8.2 符号表的结构 241
8.3 关于符号表的几点说明 244
8.4 作用域规则和块结构 247
8.5 同层说明的相互作用 252
8.6 习 题 253
第9章 目标程序运行时环境 255
9.1 程序运行时的存储器分配 256
9.2 程序完全静态运行时环境 259
9.3 程序基于栈的运行时环境 262
9.4 动态存储器管理 273
9.5 参数传递 278
9.6 习 题 283
第10章代码优化 286
10.1 优化概述 286
10.2 优化的数据结构和技术 294
10.3 优化的分类实现简介 298
10.4 习 题 304
第11章代码生成 305
11.1 一个计算机模型 305
11.2 一个简单的代码生成器 306
11.3 寄存器分配 310
11.4 代码生成的研究现状 311
11.5 习题 315
主要参考文献 316
- 《第一性原理方法及应用》李青坤著 2019
- 《计算机组成原理解题参考 第7版》张基温 2017
- 《高等院校保险学专业系列教材 保险学原理与实务》林佳依责任编辑;(中国)牟晓伟,李彤宇 2019
- 《刑法归责原理的规范化展开》陈璇著 2019
- 《教师教育系列教材 心理学原理与应用 第2版 视频版》郑红,倪嘉波,刘亨荣编;陈冬梅责编 2020
- 《单片机原理及应用》庄友谊 2020
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《计算机组成原理 第2版》任国林 2018
- 《化工原理课程设计》刘建周主编 2018
- 《会计学原理》邵瑞庆主编 2019