图书介绍
编译原理及实践教程 第2版2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

- 黄贤英,曹琼,王柯柯编著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302277439
- 出版时间:2012
- 标注页数:225页
- 文件大小:16MB
- 文件页数:237页
- 主题词:编译程序-程序设计-高等学校-教材
PDF下载
下载说明
编译原理及实践教程 第2版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.1.3编译程序和解释程序3
1.1.4编译程序的伙伴3
1.2编译过程和编译程序的结构5
1.2.1编译过程概述5
1.2.2编译程序的结构8
1.2.3编译阶段的组合9
1.3编译程序的设计11
1.3.1编译程序的构造方式11
1.3.2 Sample语言编译程序的设计12
1.4编译程序的发展及应用13
1.4.1编译程序的发展13
1.4.2为什么要学习编译原理及其构造技术14
1.4.3编译技术的应用14
1.5小结16
1.6习题16
第2章 高级语言设计基础17
2.1符号和符号串17
2.2文法与语言18
2.2.1文法的定义19
2.2.2文法产生的语言21
2.2.3文法的二义性23
2.2.4文法的分类25
2.3高级语言的设计26
2.3.1程序语言的定义26
2.3.2冯·诺依曼体系结构与高级语言27
2.3.3数据类型29
2.3.4语句和控制结构29
2.3.5语言设计的步骤32
2.4语言设计实例32
2.4.1 Sample语言字符集的定义33
2.4.2 Sample语言单词的定义33
2.4.3 Sample语言数据类型的定义35
2.4.4 Sample语言表达式的定义35
2.4.5 Sample语言语句的定义35
2.4.6 Sample语言程序体和程序的定义37
2.4.7符合Sample语言定义的源程序举例37
2.5小结38
2.6习题38
第3章 词法分析40
3.1词法分析的任务和功能40
3.1.1词法分析的功能40
3.1.2单词的类型和种别码41
3.2词法分析器的设计42
3.2.1词法分析程序的接口43
3.2.2词法分析程序的总体设计43
3.2.3词法分析程序的详细设计45
3.2.4单词的识别和状态转换图46
3.2.5符号表及其操作48
3.2.6词法分析阶段的错误处理49
3.3正规文法、正规式与有穷自动机50
3.3.1正规文法50
3.3.2正规式51
3.3.3有穷自动机52
3.3.4正规文法与有穷自动机的等价性59
3.3.5正规式与有穷自动机的等价性60
3.4词法分析程序的自动生成63
3.4.1 LEX的概述63
3.4.2 LEX源文件的书写64
3.4.3 LEX的工作原理69
3.4.4 LEX使用中的一些注意事项71
3.4.5使用LEX自动生成Sample语言的词法分析程序72
3.5小结73
3.6习题73
第4章 语法分析77
4.1语法分析概述77
4.2自上而下的语法分析78
4.2.1自上而下分析方法中的问题探究78
4.2.2递归下降分析方法86
4.2.3预测分析方法90
4.2.4 Sample语言自上而下语法分析程序的设计95
4.3自下而上的语法分析97
4.3.1自下而上分析方法概述98
4.3.2算符优先分析法101
4.3.3 LR分析法110
4.4语法分析器的自动生成工具YACC131
4.4.1 YACC概述131
4.4.2 YACC源文件的格式132
4.4.3 YACC的翻译规则134
4.4.4 YACC的辅助程序135
4.5语法分析程序中的错误处理135
4.5.1语法分析中的错误处理的一般原则135
4.5.2自上而下语法分析的错误处理136
4.5.3自下而上语法分析的错误处理139
4.6小结143
4.7习题143
第5章 语义分析和中间代码生成147
5.1概述147
5.1.1语义分析和中间代码生成的功能和任务147
5.1.2静态语义检查148
5.1.3语义处理148
5.2属性文法和语法制导的翻译151
5.2.1属性文法的定义151
5.2.2综合属性的计算153
5.2.3继承属性的计算153
5.2.4语法制导的翻译方法154
5.3常见语句的语法制导的翻译156
5.3.1语义变量和语义函数156
5.3.2常量说明语句的语义处理157
5.3.3变量说明语句的语义处理157
5.3.4算术表达式和简单赋值语句的翻译159
5.3.5布尔表达式的翻译161
5.3.6 if语句的翻译167
5.3.7 do…while语句的翻译169
5.3.8 for语句的翻译170
5.4 Sample语言语法制导的翻译程序的设计172
5.5小结173
5.6习题173
第6章 运行时存储空间的组织176
6.1程序执行时的活动176
6.1.1源程序中的过程176
6.1.2过程执行时的活动177
6.1.3名字的作用域178
6.1.4参数的传递178
6.1.5名字的绑定179
6.2程序执行时的存储器组织179
6.2.1程序执行时存储器的划分180
6.2.2活动记录181
6.2.3存储分配策略182
6.3静态存储分配183
6.3.1静态存储分配的性质183
6.3.2静态存储分配的实现184
6.3.3临时变量的地址分配185
6.4栈式存储分配策略185
6.5堆式存储分配187
6.5.1堆式存储分配的主要问题188
6.5.2堆式动态存储分配的实现189
6.5.3存储回收190
6.6小结191
6.7习题191
第7章 代码优化192
7.1概述192
7.1.1代码优化的地位192
7.1.2基本块的概念及流图193
7.2局部优化195
7.2.1删除公共子表达式196
7.2.2复写传播196
7.2.3删除无用代码197
7.2.4对程序进行代数恒等变换197
7.2.5基本块的DAG表示及优化198
7.3循环优化202
7.3.1循环的定义202
7.3.2代码外提203
7.3.3强度削弱204
7.3.4删除归纳变量205
7.4小结206
7.5习题206
第8章 目标代码生成209
8.1概述209
8.2目标机器211
8.3简单的代码生成算法212
8.3.1中间代码的简单翻译方法212
8.3.2引用信息和活跃信息214
8.3.3寄存器描述和地址描述216
8.3.4基本块的代码生成算法217
8.4从DAG生成目标代码219
8.5 Sample代码优化及目标代码生成器的设计221
8.6小结223
8.7习题223
参考文献225
热门推荐
- 520413.html
- 2744764.html
- 3128883.html
- 153938.html
- 3452856.html
- 1705868.html
- 172828.html
- 2489618.html
- 842391.html
- 3120371.html
- http://www.ickdjs.cc/book_1230278.html
- http://www.ickdjs.cc/book_531343.html
- http://www.ickdjs.cc/book_3830432.html
- http://www.ickdjs.cc/book_1424672.html
- http://www.ickdjs.cc/book_3179393.html
- http://www.ickdjs.cc/book_2511725.html
- http://www.ickdjs.cc/book_3729188.html
- http://www.ickdjs.cc/book_2053489.html
- http://www.ickdjs.cc/book_238125.html
- http://www.ickdjs.cc/book_806319.html