图书介绍
编译原理PDF|Epub|txt|kindle电子书版本网盘下载
![编译原理](https://www.shukui.net/cover/51/31225947.jpg)
- 陈英,王贵珍,李侃等编著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302197447
- 出版时间:2009
- 标注页数:337页
- 文件大小:17MB
- 文件页数:350页
- 主题词:编译程序-程序设计
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源程序的执行2
1.2编译程序的表示与分类2
1.2.1 T型图2
1.2.2编译程序的分类3
1.3编译程序的结构与编译过程4
1.3.1编译程序的结构与编译过程4
1.3.2编译程序结构的公共功能与编译程序的组织9
1.4语言开发环境中的伙伴程序10
1.5编译程序结构的实例模型11
1.5.1一遍编译程序结构11
1.5.2 PRIME机上AHPL语言的两遍编译程序11
1.5.3 PDP-11计算机上C语言的三遍编译程序11
1.5.4 Tiger编译程序结构12
1.5.5 GCC编译程序结构框架13
1.6编译程序的构造与实现14
1.6.1如何构造一个编译程序14
1.6.2编译程序的生成方式15
1.6.3编译程序的构造工具15
习题116
第2章 形式语言与自动机理论基础18
2.1文法和语言18
2.1.1语言的语法和语义18
2.1.2文法和语言的定义19
2.1.3文法的表示方法25
2.1.4语法分析树与二义性26
2.1.5文法和语言的类型29
2.2有限自动机30
2.2.1确定的有限自动机31
2.2.2非确定的有限自动机33
2.2.3确定的有限自动机与非确定的有限自动机的等价35
2.2.4确定的有限自动机的化简38
2.3正规式与有限自动机42
2.3.1有限自动机与正则文法42
2.3.2正规式与正规集43
2.3.3正规式与有限自动机44
习题252
第3章 词法分析58
3.1词法分析与词法分析程序58
3.2词法分析程序设计与实现59
3.2.1词法分析程序的输入与输出59
3.2.2源程序的输入与预处理60
3.2.3单词的识别61
3.2.4词法分析程序与语法分析程序的接口62
3.2.5词法分析器的设计与实现62
3.3词法分析程序的自动生成68
3.3.1词法分析自动实现思想与自动生成器——Lex/Flex68
3.3.2 Lex运行与应用过程68
3.3.3 Lex语言69
3.3.4词法分析器产生器的实现73
3.3.5 Lex应用74
习题378
第4章 语法分析——自上而下分析79
4.1语法分析综述79
4.1.1语法分析程序的功能79
4.1.2语法分析方法80
4.2不确定的自上而下语法分析81
4.2.1一般自上而下分析81
4.2.2不确定性的原因与解决方法82
4.2.3消除回溯85
4.3递归下降分析法与递归下降分析器86
4.3.1递归下降分析器的实现86
4.3.2递归下降分析器设计工具——状态转换图87
4.4 LL(1)分析法与LL(1)分析器89
4.4.1 LL (1)分析器的逻辑结构与动态实现89
4.4.2 LL(1)分析表的构造91
4.4.3关于LL(1)文法94
习题495
第5章 语法分析——自下而上分析99
5.1基于“移进-归约”的自下而上分析99
5.1.1“移进-归约”分析99
5.1.2规范归约与句柄101
5.2算符优先分析法与算符优先分析器103
5.2.1直观的算符优先分析法103
5.2.2算符优先文法和算符优先分析表的构造106
5.2.3算符优先分析法实现的理论探讨109
5.2.4优先函数表的构造112
5.3 LR分析114
5.3.1 LR分析法与LR文法114
5.3.2 LR(0)分析及LR(0)分析表的构造119
5.3.3 SLR(1)分析及SLR(1)分析表的构造128
5.3.4 LR(1)分析及LR(1)分析表的构造130
5.3.5 LALR(1)分析及LALR(1)分析表的构造135
5.4 LR分析对二义文法的应用138
5.5 LR分析的错误处理与恢复140
5.6语法分析程序自动生成器142
5.6.1 YACC综述与应用143
5.6.2 YACC语言144
5.6.3 YACC处理二义文法145
5.6.4 YACC的错误恢复147
5.6.5 YACC应用148
习题5158
第6章 语义分析与中间代码生成163
6.1语法制导翻译163
6.1.1语法制导定义164
6.1.2综合属性165
6.1.3继承属性166
6.1.4依赖图166
6.1.5语法树的构造168
6.1.6 S_属性定义与自下而上计算168
6.1.7 L_属性定义与翻译模式169
6.2符号表172
6.2.1符号表的组织173
6.2.2分程序结构的符号表174
6.3类型检查177
6.3.1类型体制177
6.3.2一个简单的类型检查程序179
6.4中间语言183
6.4.1逆波兰表示法183
6.4.2 N-元式表示法184
6.4.3图表示法186
6.5中间代码生成186
6.5.1说明类语句的翻译186
6.5.2赋值语句与表达式的翻译189
6.5.3控制流语句的翻译190
6.5.4数组说明和数组元素引用的翻译196
6.5.5过程、函数说明和调用的翻译198
习题6199
第7章 运行环境203
7.1程序运行时的存储组织与分配203
7.1.1关于存储组织203
7.1.2过程的活动记录204
7.1.3存储分配策略205
7.2静态运行时环境与存储分配206
7.3基于栈的运行时环境的动态存储分配208
7.3.1简单的栈式存储分配的实现208
7.3.2嵌套过程语言的栈式存储分配的实现210
7.4基于堆的运行时环境的动态存储分配212
7.4.1基于堆的运行时环境的动态存储分配的实现212
7.4.2关于悬空引用214
习题7216
第8章 代码优化221
8.1代码优化概述221
8.1.1代码优化的概念221
8.1.2优化技术分类222
8.1.3优化编译程序的组织227
8.2局部优化227
8.2.1基本块的定义与划分227
8.2.2程序的控制流图228
8.2.3基本块的DAG表示及应用229
8.3控制流分析与循环查找236
8.4数据流分析239
8.4.1程序中的点与通路239
8.4.2到达-定值数据流方程及其方程求解239
8.4.3引用-定值链(ud链)242
8.4.4活跃变量与数据流方程242
8.4.5定值-引用链(du链)与du链数据流方程243
8.4.6可用表达式数据流方程244
8.5循环优化244
8.5.1代码外提245
8.5.2强度削弱247
8.5.3变换循环控制变量(删除归纳变量)247
习题8249
第9章 代码生成253
9.1代码生成器设计中的要点253
9.1.1代码生成器的输入与输出253
9.1.2指令的选择254
9.1.3寄存器分配255
9.1.4存储管理256
9.2简单代码生成器的构造256
9.3目标代码的窥孔优化258
9.3.1冗余指令序列259
9.3.2控制流优化260
9.3.3代数化简261
9.3.4窥孔优化实例261
习题9264
第10章 编译程序实现范例265
10.1 PL/0语言描述265
10.2 PL/0编译程序的结构266
10.3 PL/0编译程序的词法分析268
10.4 PL/0编译程序的语法分析270
10.5 PL/0编译程序的目标代码结构和代码生成274
10.6 PL/0编译程序的语法错误处理276
10.7 PL/0编译程序的目标代码解释执行时的存储分配279
10.8 PL/0编译程序文本281
习题10301
第11章 编译技术高级专题303
11.1面向对象语言的翻译303
11.1.1面向对象程序设计语言的概念303
11.1.2面向对象语言的翻译305
11.1.3面向对象语言中的动态存储308
11.2高性能计算机体系结构及发展趋势309
11.2.1支持指令级并行的处理器简介310
11.2.2支持线程级并行的处理器简介313
11.2.3高性能体系结构对编译器的挑战316
11.3关于并行优化技术316
11.3.1指令相关与指令并行化316
11.3.2循环展开与优化319
11.3.3 VLIW指令调度322
11.4存储层次及其优化技术323
11.4.1存储层次与Cache组织结构323
11.4.2 Cache预取324
11.4.3循环交换325
11.4.4循环分块327
11.5 关于GLR分析法329
习题11335
参考文献337