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

- 胡元义主编 著
- 出版社: 西安:西安电子科技大学出版社
- ISBN:7560612431
- 出版时间:2003
- 标注页数:218页
- 文件大小:9MB
- 文件页数:232页
- 主题词:编译程序-程序设计-高等学校-教材
PDF下载
下载说明
编译原理教程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第一章绪论1
1.1编译程序概述1
目录1
1.2编译程序的工作过程与结构3
1.3编译程序的开发4
1.4构造编译程序所应掌握的内容6
习题一6
第二章词法分析8
2.1词法分析器设计方法8
2.1.1单词符号的分类与输出形式8
2.1.2状态转换图9
2.2一个简单的词法分析器示例11
2.2.1 C语言子集的单词符号表示11
2.2.2 C语言子集对应的状态转换图12
2.2.3状态转换图的实现13
2.3.1 正规表达式与正规集15
2.3 正规表达式与有限自动机简介15
2.3.2有限自动机17
2.4 正规表达式到有限自动机的构造19
2.4.1 由正规表达式构造等价的NFAM19
2.4.2 NFAM的确定化20
2.4.3 DFAM的化简22
2.4.4 正规表达式到有限自动机构造示例23
2.5词法分析器的自动生成27
习题二29
第三章语法分析31
3.1文法和语言31
3.1.1文法和语言的概念31
3.1.2形式语言分类34
3.1.3正规表达式与上下文无关文法36
3.2推导与语法树37
3.2.1推导与短语37
3.2.2语法树与二义性38
3.3.1 递归下降分析法42
3.3 自上而下分析方法42
3.3.2 LL(1)分析法49
3.4自下而上分析方法54
3.4.1 自下而上分析原理54
3.4.2算符优先分析法57
3.5 LR分析法65
3.5.1 LR分析器的工作原理65
3.5.2 LR(0)分析表的构造68
3.5.3 SLR(1)分析表的构造73
*3.5.4 LR(1)分析表的构造74
*3.5.5 LALR分析表的构造79
3.5.6二义文法的应用81
*3.5.7 LR分析器应用拓展85
习题三85
4.1.2语法制导翻译方法91
4.1.1 语义分析的概念91
第四章语义分析和中间代码生成91
4.1 概述91
4.2属性文法93
4.2.1文法的属性93
4.2.2属性文法94
4.3 几种常见的中间语言95
4.3.1抽象语法树95
4.3.2逆波兰表示法96
4.3.3三地址代码97
4.4表达式及赋值语句的翻译100
4.4.1简单算术表达式和赋值语句的翻译100
4.4.2布尔表达式的翻译101
4.5控制语句的翻译106
4.5.1条件语句if的翻译106
4.5.2条件循环语句while的翻译108
4.5.3三种基本控制结构的翻译109
4.5.4多分支控制语句case的翻译112
4.5.5语句标号和转移语句的翻译114
4.6数组元素的翻译115
4.6.1 数组元素的地址计算及中间代码形式115
4.6.2赋值语句中数组元素的翻译115
4.6.3数组元素翻译示例117
4.7 过程或函数调用语句的翻译120
4.7.1过程调用的方法120
4.7.2过程或函数调用语句的四元式生成121
4.8说明语句的翻译121
4.8.1变量说明的翻译121
4.8.2数组说明的翻译122
4.9 递归下降语法制导翻译方法简介123
习题四124
5.1.1基本块的划分方法127
5.1 局部优化127
第五章代码优化127
5.1.2基本块的DAG表示128
5.1.3利用DAG进行基本块的优化处理132
5.1.4 DAG构造算法的进一步讨论133
5.2循环优化134
5.2.1程序流图与循环134
5.2.2循环的查找136
5.2.3循环优化140
5.3代码优化示例148
习题五152
第六章运行时存储空间组织156
6.1静态存储分配156
6.2简单的栈式存储分配157
6.2.1栈式存储分配与活动记录158
6.2.2过程的执行159
6.3.1 嵌套层次显示表(DISPLAY)和活动记录162
6.3嵌套过程语言的栈式实现162
6.3.2嵌套过程的执行163
6.3.3访问非局部名的另一种实现方法164
6.4堆式动态存储分配168
6.4.1堆式存储的概念168
6.4.2 堆式存储管理的方法168
*6.5参数传递补遗170
6.5.1参数传递的方法171
6.5.2不同参数传递方法的比较172
习题六173
第七章 目标代码生成176
7.1一个简单代码生成器176
7.1.1待用信息与活跃信息177
7.1.2代码生成算法179
7.1.3寄存器分配180
7.1.4源程序到目标代码生成示例182
*7.2汇编指令到机器代码的翻译概述185
习题七191
第八章符号表与错误处理193
8.1 符号表193
8.1.1符号表的作用193
8.1.2符号表的组织194
8.1.3分程序结构语言的符号表建立195
8.1.4非分程序结构语言的符号表建立198
8.1.5常用符号表结构199
8.1.6符号表的内容200
8.2错误处理201
8.2.1语法错误的校正201
8.2.2语义错误的校正207
习题八209
附录1 8086/8088指令码汇总表211
附录2 8086/8088指令编码空间表216
参考文献218
热门推荐
- 3861188.html
- 1279330.html
- 2619081.html
- 3811518.html
- 3276059.html
- 688689.html
- 2985232.html
- 2717071.html
- 3555201.html
- 2762224.html
- http://www.ickdjs.cc/book_1437507.html
- http://www.ickdjs.cc/book_2207229.html
- http://www.ickdjs.cc/book_2622580.html
- http://www.ickdjs.cc/book_3138383.html
- http://www.ickdjs.cc/book_2692916.html
- http://www.ickdjs.cc/book_306382.html
- http://www.ickdjs.cc/book_1362243.html
- http://www.ickdjs.cc/book_1638969.html
- http://www.ickdjs.cc/book_2269269.html
- http://www.ickdjs.cc/book_598031.html