图书介绍
重点大学计算机教材 编译原理:编译程序构造与实践PDF|Epub|txt|kindle电子书版本网盘下载
![重点大学计算机教材 编译原理:编译程序构造与实践](https://www.shukui.net/cover/51/31765368.jpg)
- 张幸儿编著 著
- 出版社: 北京:机械工业出版社
- ISBN:9787111222514
- 出版时间:2008
- 标注页数:298页
- 文件大小:15MB
- 文件页数:306页
- 主题词:编译程序-程序设计-高等学校-教材
PDF下载
下载说明
重点大学计算机教材 编译原理:编译程序构造与实践PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 概述1
1.1 编译程序的引进1
1.1.1 高级程序设计语言与程序1
1.1.2 高级程序设计语言程序的执行1
1.2 编译程序和程序设计语言的联系2
1.2.1 程序设计语言的定义2
1.2.2 编译程序构造4
1.3 编译程序的分类6
1.4 实际应用中的编译程序7
本章小结8
第2章 编译程序构造基础知识9
2.1 文法和语言9
2.1.1 符号串和符号串集合9
2.1.2 字母表的闭包和正闭包11
2.1.3 文法的定义11
2.1.4 语言的定义20
2.2 文法和语言的分类22
2.2.1 Chomsky文法类23
2.2.2 Chomsky文法类与程序设计语言25
2.2.3 对上下文无关文法的进一步讨论26
2.3 文法等价和等价变换26
2.3.1 文法等价的概念26
2.3.2 压缩文法等价变换27
2.3.3 消去左递归的文法等价变换31
2.4 句型分析35
2.4.1 语法分析工具——语法分析树35
2.4.2 句型分析与分析技术39
本章小结42
习题43
上机实习题45
第3章 词法分析46
3.1 概述46
3.1.1 词法分析和词法分析程序46
3.1.2 实现方式47
3.2 有穷状态自动机47
3.2.1 状态转换图47
3.2.2 确定有穷状态自动机DFA51
3.2.3 非确定有穷状态自动机NFA53
3.2.4 正则表达式58
3.3 词法分析程序的设计和实现61
3.3.1 设计要点61
3.3.2 属性字的设计61
3.3.3 标识符的处理65
3.3.4 词法分析程序的编写70
3.3.5 词法分析程序的自动生成74
本章小结82
习题83
上机实习题84
第4章 语法分析——自顶向下分析技术85
4.1 引言85
4.1.1 自顶向下分析技术概述85
4.1.2 带回溯的自顶向下分析技术86
4.2 无回溯的自顶向下分析技术88
4.2.1 先决条件88
4.2.2 递归下降分析技术88
4.2.3 预测分析技术94
本章小结104
习题104
上机实习题105
第5章 语法分析——自底向上分析技术106
5.1 引言106
5.1.1 自底向上分析技术概况106
5.1.2 基本实现方法107
5.2 算符优先分析技术108
5.2.1 算符优先分析技术的引进108
5.2.2 算符文法108
5.2.3 算符优先关系与算符优先文法109
5.2.4 应用算符优先分析技术进行句型分析113
5.2.5 优先函数117
5.3 LR(k)分析技术124
5.3.1 LR(k)文法和LR(k)分析技术124
5.3.2 SLR(1)分析表构造方法134
5.3.3 LALR(1)分析表构造方法143
5.3.4 LR(1)识别程序实现之考虑147
5.4 识别程序自动构造148
5.4.1 自动构造的基本思想148
5.4.2 非LR(1)文法分析表的构造149
5.4.3 识别程序自动生成系统YACC简介151
本章小结153
习题153
上机实习题155
第6章 语义分析与目标代码生成156
6.1 概况156
6.1.1 语义分析的概念156
6.1.2 属性文法158
6.1.3 类型表达式与语义分析170
6.2 说明部分的翻译177
6.2.1 常量定义的翻译178
6.2.2 变量说明的翻译178
6.2.3 函数定义的翻译180
6.2.4 结构(体)类型的翻译183
6.3 目标代码的生成183
6.3.1 概况183
6.3.2 虚拟机186
6.3.3 控制语句的翻译188
6.4 翻译方案实现之考虑211
6.4.1 实现思路211
6.4.2 分析211
6.4.3 程序控制流程示意图和语义子程序217
6.5 源程序的内部中间表示220
6.5.1 抽象语法树220
6.5.2 逆波兰表示221
6.5.3 四元式序列225
6.5.4 三元式序列232
本章小结233
习题233
上机实习题235
第7章 运行时刻支持环境236
7.1 引言236
7.2 运行时刻存储分配策略236
7.2.1 情况分析236
7.2.2 静态存储分配239
7.2.3 栈式存储分配239
7.2.4 堆式存储分配240
7.3 符号表241
7.3.1 符号表的作用241
7.3.2 符号表的组织241
7.3.3 符号表的数据结构245
7.4 运行时刻支持系统247
本章小结247
习题248
第8章 代码优化250
8.1 概况250
8.1.1 代码优化的概念250
8.1.2 代码优化的分类251
8.1.3 代码优化程序的输入与输出252
8.1.4 代码优化程序的结构253
8.2 基本块的优化253
8.2.1 基本块优化的种类253
8.2.2 基本块优化的实现256
8.3 与循环有关的优化262
8.3.1 循环优化的种类263
8.3.2 循环优化的实现268
8.4 窥孔优化284
8.4.1 冗余指令删除285
8.4.2 控制流优化286
8.4.3 代数化简286
8.4.4 特殊指令的使用286
本章小结286
习题287
上机实习题288
第9章 程序错误的检查和校正290
9.1 概述290
9.1.1 必要性290
9.1.2 错误的种类290
9.1.3 错误复原和错误校正291
9.2 词法错误的复原和校正292
9.2.1 词法错误的种类292
9.2.2 词法错误的校正293
9.3 语法错误的复原和校正293
9.3.1 语法错误的复原293
9.3.2 语法错误的校正294
9.4 语义错误295
9.4.1 语义错误的种类295
9.4.2 语义错误检查措施296
本章小结297
参考文献298