编译原理简明教程PDF电子书下载
- 电子书积分:10 积分如何计算积分?
- 作 者:杨明,姜乃松,蔡维玲编著
- 出 版 社:北京:电子工业出版社
- 出版年份:2012
- ISBN:9787121145964
- 页数:232 页
第1章 编译概述 1
1.1翻译程序 1
1.2编译过程和编译程序的基本结构 2
1.3编译程序的分类和生成方法 5
1.3.1编译程序的分类 5
1.3.2编译程序的生成方法 6
1.4编译技术的应用 7
本章小结 7
习题1 7
第2章 文法与语言 8
2.1符号串与语言 8
2.1.1字母表 8
2.1.2符号串 8
2.1.3符号串的集合——语言 9
2.2文法和语言的形式化定义 10
2.2.1文法的形式化定义 10
2.2.2语言的形式化定义 14
2.2.3短语、直接短语和句柄 16
2.2.4规范推导和规范归约 17
2.3语法分析树与文法的二义性 18
2.3.1语法分析树 18
2.3.2文法的二义性 19
2.3.3二义性的消除 20
2.4文法的化简 22
2.5语言的分类 23
本章小结 25
习题2 26
第3章 词法分析与有限自动机 28
3.1词法分析器的设计 28
3.1.1词法分析器的任务 28
3.1.2词法分析器的输出形式 29
3.2词法分析器的手工构造 30
3.2.1确定的有限自动机 31
3.2.2构造单词的确定有限自动机 32
3.2.3编写一个C语言词法分析器 34
3.3有限自动机及其化简 36
3.3.1不确定有限自动机 36
3.3.2不确定有限自动机的化简 37
3.3.3确定有限自动机的化简 40
3.4正规文法、正规式和有限自动机之间的关系 42
3.4.1正规式与正规集 42
3.4.2正规式与正规文法的关系 43
3.4.3正规文法与有限自动机之间的转换 45
3.4.4正规式与有限自动机之间的转换 47
3.5词法分析程序自动生成器——Lex 49
3.5.1 Lex的功能 50
3.5.2 Lex源程序的组成 50
3.5.3 Lex编译器的实现原理 51
3.5.4一个生成C语言词法分析器的 Lex程序格式 51
本章小结 53
习题3 53
第4章 自顶向下的语法分析 55
4.1语法分析器的功能 55
4.2不确定的自顶向下的分析方法 56
4.3 LL(1)分析方法 57
4.3.1回溯的判别条件与LL(1)文法 57
4.3.2左递归文法的改造 58
4.3.3回溯的消除 60
4.4构造递归下降分析程序 61
4.5非递归的预测分析方法 62
4.5.1预测分析程序工作原理 63
4.5.2构造预测分析表(或称LL(1)分析表) 64
4.5.3预测分析的出错处理 66
本章小结 68
习题4 68
第5章 自底向上的语法分析 70
5.1引言 70
5.2自底向上的语法分析面临的问题 70
5.3算符优先分析技术 71
5.3.1算符优先关系的定义 71
5.3.2算符优先关系表的生成 74
5.3.3算符优先分析总控程序 76
5.3.4优先函数及其生成 78
5.4 LR分析技术 81
5.4.1 LR分析技术概述 81
5.4.2 LR(0)分析法 82
5.4.3 SLR(1)分析技术 89
5.4 4 LR(1)分析技术 90
5.4 5 LALR(1)分析技术 94
5.5二义性文法的应用 95
5.6语法分析器自动生成器——YACC 96
5.6.1基本原理与工作过程 96
5.6.2 C语法分析器的自动生成 102
本章小结 102
习题5 102
第6章 属性文法 104
6.1属性文法 104
6.1.1属性文法的定义 104
6.1.2综合属性 106
6.1.3继承属性 106
6.1.4依赖图 107
6.1.5属性文法的计算顺序 108
6.2 S-属性定义及其自底向上的计算 109
6.3 L-属性定义及其自顶向下的计算 111
6.4自底向上计算继承属性 115
6.4.1删除翻译方案中嵌入的动作 115
6.4.2分析栈中的继承属性 115
6.4.3模拟继承属性的计算 117
本章小结 119
习题6 119
第7章 语义分析与语法制导的翻译 121
7.1语义分析的主要任务 121
7.2中间语言 121
7.2.1图表示 122
7.2.2抽象语法树 122
7.2.3三地址代码 123
7.2.4四元式 124
7.2.5三元式 124
7.2.6逆波兰式表示 125
7.3声明语句的翻译 125
7.3.1 C语言变量声明语句的翻译 125
7.3.2 C语言函数定义的翻译 126
7.3.3 C语言数组定义的翻译 131
7.4 C表达式与简单赋值语句的翻译 133
7.5支持C数组的赋值语句的翻译 134
7.6 C语言布尔表达式的翻译 136
7.6.1作为数值计算的布尔表达式的翻译 137
7.6.2作为条件控制用的布尔表达式的翻译 138
7.7 C语言中if语句的翻译 140
7.8 C语言中while语句的翻译 145
7.9 C语言中switch语句的翻译 147
7.10 C语言中break语句的翻译 148
7.11 C语言continue语句的翻译 149
7.12 C语言中标号与goto语句的翻译 150
7.13 C语言函数调用语句的翻译 150
本章小结 152
习题7 152
第8章 运行时环境 153
8.1概述 153
8.2符号表 154
8.2.1符号表的作用与结构 154
8.2.2符号表的管理 154
8.2.3 C语言中的符号表 155
8.3存储分配策略 157
8.3.1静态存储分配策略 157
8.3.2栈式存储分配策略 157
8.3.3堆式存储分配策略 158
8.4存储空间的组织 158
8.4.1运行时内存空间的划分 158
8.4.2函数与活动记录 158
8.5非局部变量的访问 159
8.6 C语言的存储分配 163
8.6.1 C语言的活动记录结构 163
8.6.2入口指令的自动生成 165
8.6.3出口指令的自动生成 166
8.7垃圾回收机制 166
8.8运行库管理 168
8.9连接程序与装配程序 168
本章小结 169
习题8 169
第9章 目标代码生成 171
9.1概述 171
9.2一个面向栈的计算机模型 171
9.3中间代码生成目标代码 173
9.3.1逆波兰式生成目标代码 173
9.3.2四元式生成目标代码 174
9.4 C语言目标代码生成 176
9.4.1目标文件结构 176
9.4.2从内部语法树生成目标代码 177
9.5寄存器分配算法 179
本章小结 181
习题9 182
第10章 代码优化 183
10.1基本概念 183
10.1.1优化的定义 183
10.1.2优化的原则 183
10.1.3优化的分类 183
10.1.4代码优化器的结构 184
10.2基本块的概念及优化举例 185
10.2.1基本块的概念 185
10.2.2流图 185
10.2.3优化举例 186
10.3基本块内优化 189
10.3.1块内优化技术 189
10.3.2基本块的DAG 190
10.4循环优化 195
10.4.1循环的查找 195
10.4.2循环优化技术 197
本章小结 201
习题10 201
第11章 并行编译技术 204
11.1并行处理 204
11.11并行体系结构 204
11.1.2并行软件系统 205
11.1.3并行程序设计 205
11.2并行编译系统的功能和结构 206
11.2.1并行编译系统的功能 206
11.2.2并行编译系统的结构 206
11.3向量语言编译技术 207
11.4共享存储器并行机的并行编译技术 207
本章小结 208
习题11 208
第12章 面向对象语言的语法制导翻译 209
12.1面向对象语言理论基础 209
12.2 mini-C++的对象布局模型的设计 210
12.3 mini-C++的函数名字转换方案的设计 211
12.4 mini-C++的try-catch语句的翻译 213
12.5 mini-C++的非静态函数的翻译 215
12.6 mini-C++的函数重载的翻译 216
12.7 mini-C++的单一继承的编译处理 217
12.8 mini-C++的多重继承的编译处理 219
12.9 mini-C++的虚基类的编译处理 221
12.10 mini-C++的单一继承下虚函数重写的翻译 223
12.11 mini-C++的多重继承下虚函数重写的翻译 224
12.12 mini-C++的运算符重载的翻译 224
12.13 mini-C++的模板的翻译 225
本章小结 225
习题12 225
附录A C语言的YACC源程序 226
参考文献 232
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《AutoCAD 2019 循序渐进教程》雷焕平,吴昌松,陈兴奎主编 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《名医教你练走颈肩腰腿痛》许学猛 2018
- 《英语自学进阶教程全6册 3》爱尔兰迪尔德丽出版社著 2019
- 《雅马哈管乐队训练教程 降E调单簧管 分谱》Japan Band Clinic委员会 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《电子测量与仪器》人力资源和社会保障部教材办公室组织编写 2009
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019
- 《电子应用技术项目教程 第3版》王彰云 2019
- 《中国十大出版家》王震,贺越明著 1991
- 《近代民营出版机构的英语函授教育 以“商务、中华、开明”函授学校为个案 1915年-1946年版》丁伟 2017