图书介绍
计算机编译原理pdf电子书版本下载
- 张幸儿编著 著
- 出版社: 北京:科学出版社
- ISBN:7030071956
- 出版时间:1999
- 标注页数:381页
- 文件大小:16MB
- 文件页数:391页
- 主题词:
PDF下载
下载说明
计算机编译原理PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一章 总论 1
§1 引言 1
§2 程序设计语言与程序 2
2.1 程序及其结构 2
2.2 程序设计语言的定义 3
2.3 程序的执行 6
§3 编译程序构造及有关概念 8
3.1 编译程序的构造 8
3.2 趟的概念 9
3.3 编译程序的分类 10
3.4 实际应用中的编译程序 11
§4 形式语言理论与编译实现技术 12
第二章 文法与语言 14
§1 符号串与符号串集合 14
1.1 字母表 14
1.2 符号串 14
1.3 行号串集合 16
§2 文法与语言的形式定义 17
2.1 文法的形式定义 17
2.2 语言的形式定义 23
3.1 Chomsky语言类 26
§3 语言的分类 26
3.2 形式语言与自动机 31
3.3 形式语言的分类与程序设计语言 33
3.4 对上下文无关文法的进一步讨论 34
§4 文法等价与等价变换 37
4.1 文法等价的概念 37
4.2 压缩文法等价变换 38
4.3 增广文法等价变换 40
4.4 消去单规则等价变换 40
4.5 范式文法等价变换 41
4.6 消去左递归的文法等价变换 42
§5 语法树与句型分析 45
5.1 语法树的概念 45
5.2 句型分析 49
习题1 53
习题2 53
习题3 54
习题4 54
习题5 55
1.2 符号的识别与重写规则的关系 57
1.1 词法分析与词法分析程序 57
第三章 词法分析 57
§1 引言 57
1.3 实现方式 58
§2 正则表达式与有穷状态自动机 59
2.1 状态转换图与转换系统 59
2.2 确定有穷状态自动机DFA 62
2.3 非确定有穷状态自动机NFA 65
2.4 确定有穷状态自动机的化简 69
2.5 正则表达式 71
3.1 单词与属性字 80
§3 词法分析程序的实现 80
3.2 标识符的处理 85
3.3 词法分析程序的编写 90
§4 词法分析程序的自动生成 93
4.1 基本思想 93
4.2 扫描程序定义与构造程序 99
4.3 自动生成系统LEX简介 102
习题6 103
1.1 自顶向下分析技术及识别算术 105
1.2 讨论的前提 105
§1 引言 105
第四章 语法分析——自顶向下分析技术 105
1.3 要解决的基本问题 106
§2 带回溯的自顶向下分析技术 106
2.1 基本思想 106
2.2 实现算法及举例 109
2.3 问题及其解决 112
§3 无回溯的自顶向下分析技术 115
3.1 先决条件 115
3.2 递归下降分析技术 116
3.3 预测分析技术 120
习题7 126
第五章 语法分析——自底向上分析技术 127
§1 引言 127
1.1 自底向上分析技术及识别算法 127
1.2 讨论前提 127
1.3 基本实现方法 128
§2 简单优先分析技术 129
2.1 优先关系与优先文法 129
2.2 简单优先分析技术的实现 140
2.3 优先函数 143
2.4 简单优先分析技术的局限性及克服 153
§3 算符优先分析技术 154
3.1 算符优先分析技术的引进 154
3.2 算符文法 155
3.3 算符优先关系与算符优先文法 156
3.4 算符优先文法句型的识别 160
3.5 实际应用中的算符优先分析技术 164
3.6 算符优先技术与简单优先技术的比较 166
§4 LR(k)分析技术 167
4.1 LR(k)文法与LR(k)分析技术 167
4.2 SLR(k)分析表构造方法 178
4.3 LALR(k)分析表构造方法 190
4.4 识别程序自动构造 195
4.5 识别程序自动生成系统YACC简介 198
习题8 200
习题9 201
习题10 202
习题11 202
第六章 语义分析与目标代码生成 204
§1 概况 204
1.1 语义分析的概念 204
1.2 属性文法 206
1.3 类型体制与语义分析 221
2.1 常量定义的翻译 229
§2 说明部分的翻译 229
2.2 变量说明的翻译 230
2.3 过程说明的翻译 231
2.4 记录类型的翻译 233
§3 目标代码的生成 234
3.1 概况 234
3.2 虚拟机 236
3.3 控制语句的翻译 239
§4 源程序的内部中间表示 265
4.1 抽象语法树 265
4.2 逆波兰表示 267
4.3 四元式序列 273
4.4 三元式序列 281
习题12 282
习题13 282
习题14 283
习题15 284
第七章 运行环境 286
§1 引言 286
1.1 相关的问题 286
1.2 名字到存储字的结合 286
2.2 栈式存储分配 290
2.1 静态存储分配 290
§2 存储分配策略 290
2.3 堆式存储分配 293
§3 符号表 296
3.1 符号表的引进 296
3.2 符号表的组织 296
3.3 符号表的数据结构 300
§4 运行时刻支持系统 303
习题16 304
1.1 优化的概念 306
§1 引言 306
第八章 代码优化 306
1.2 代码优化的分类 307
1.3 代码优化程序的结构 308
§2 基本块与流图 308
§3 基本块的优化 310
3.1 基本块优化的种类 310
3.2 基本块优化的实现 313
§4 与循环有关的优化 322
4.1 循环优化的种类 322
4.2 循环优化的实现 329
5.1 冗余指令删除 350
§5 窥孔优化 350
5.2 控制流优化 351
5.3 代数化简 352
5.4 特殊指令的使用 352
习题17 353
第九章 程序错误的检查和校正 356
§1 概述 356
1.1 错误存在的必然性 356
1.2 错误的种类 356
1.3 错误复原 357
2.1 词法错误的种类 358
§2 词法错误的复原和校正 358
2.2 词法错误的校正 359
§3 语法错误的复原和校正 360
3.1 语法错误的复原 360
3.2 语法错误的校正 360
§4 语义错误 361
4.1 语义错误的种类 361
4.2 语义错误检查措施 362
解题规范例解 365
总复习思考题 378
参考文献 380