编译原理PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:王磊编著
- 出 版 社:北京:科学出版社
- 出版年份:2009
- ISBN:9787030246950
- 页数:281 页
第1章 绪论 1
1.1 程序设计语言和编译程序 1
1.2 编译程序的历史及发展 3
1.3 编译过程和编译程序结构 4
1.4 编译程序的开发 6
1.5 构造编译程序所应具备的知识内容 8
习题一 9
第2章 词法分析 10
2.1 词法分析器的设计方法 10
2.1.1 单词符号的分类与输出形式 10
2.1.2 状态转换图 12
2.2 一个简单的词法分析器示例 13
2.2.1 C语言子集的单词符号表示 13
2.2.2 C语言子集对应的状态转换图 14
2.2.3 状态转换图的实现 15
2.3 正规表达式与有限自动机简介 18
2.3.1 正规表达式与正规集 18
2.3.2 有限自动机 20
2.4 正规表达式到有限自动机的构造 23
2.4.1 由正规表达式构造等价的非确定有限自动机(NFA) 23
2.4.2 NFA的确定化 23
2.4.3 确定有限自动机(DFA)的化简 26
2.4.4 正规表达式到有限自动机构造示例 28
2.5 词法分析器的自动生成 33
习题二 35
第3章 语法分析 37
3.1 文法和语言 37
3.1.1 文法和语言的基本概念 37
3.1.2 形式语言分类 40
3.1.3 正规表达式与上下文无关文法 43
3.2 推导与语法树 44
3.2.1 推导与短语 44
3.2.2 语法树与二义性 45
3.3 自顶向下的语法分析 50
3.3.1 递归下降分析法 50
3.3.2 LL(1)分析法 58
3.4 自底向上的语法分析 65
3.4.1 自底向上分析原理 65
3.4.2 算符优先分析法 68
3.5 规范归约的自底向上语法分析方法 78
3.5.1 LR分析器的工作原理 78
3.5.2 LR(0)分析器 82
3.5.3 SLR(1)分析器 88
3.5.4 LR(1)分析器 92
3.5.5 LALR分析器 97
3.5.6 二义文法的应用 99
3.5.7 LR分析器应用与拓展 104
习题三 106
第4章 语义分析和中间代码生成 112
4.1 概述 112
4.1.1 语义分析的概念 112
4.1.2 语法制导翻译方法 112
4.2 属性文法 114
4.2.1 文法的属性 114
4.2.2 属性文法 115
4.3 几种常见的中间语言 116
4.3.1 抽象语法树 116
4.3.2 逆波兰表示法 117
4.3.3 三地址代码 120
4.4 表达式及赋值语句的翻译 123
4.4.1 简单算术表达式和赋值语句的翻译 123
4.4.2 布尔表达式的翻译 125
4.5 控制语句的翻译 130
4.5.1 条件语句if的翻译 131
4.5.2 条件循环语句while的翻译 133
4.5.3 三种基本控制结构的翻译 134
4.5.4 多分支控制语句case的翻译 140
4.5.5 语句标号和转移语句的翻译 142
4.6 数组元素的翻译 143
4.6.1 数组元素的地址计算及中间代码形式 143
4.6.2 赋值语句中数组元素的翻译 144
4.6.3 数组元素翻译示例 146
4.7 过程或函数调用语句的翻译 149
4.7.1 过程或函数调用的方法 149
4.7.2 过程或函数调用语句的四元式生成 150
4.8 说明语句的翻译 151
4.8.1 变量说明的翻译 151
4.8.2 数组说明的翻译 151
4.9 递归下降语法制导翻译方法简介 152
习题四 154
第5章 代码优化 157
5.1 局部优化 157
5.1.1 基本块的划分方法 157
5.1.2 基本块的DAG方法 158
5.1.3 用DAG进行基本块的优化处理 162
5.1.4 DAG构造算法的进一步讨论 164
5.2 循环优化 165
5.2.1 程序流图与循环 165
5.2.2 循环的查找 167
5.2.3 循环优化 172
5.3 全局优化概述 181
5.3.1 到达-定值与引用-定值链 181
5.3.2 定值-引用链(du链) 185
5.3.3 复写传播 188
5.4 代码优化示例 192
习题五 199
第6章 目标程序运行时存储空间的组织 203
6.1 静态存储分配 203
6.2 简单的栈式存储分配 204
6.2.1 栈式存储分配与活动记录 206
6.2.2 过程的执行 207
6.3 嵌套过程语言的栈式实现 210
6.3.1 嵌套层次显示(DISPLAY)表和活动记录 210
6.3.2 嵌套过程的执行 211
6.3.3 访问非局部名的另一种实现方法 212
6.4 堆式动态存储分配 216
6.4.1 堆式存储的概念 216
6.4.2 堆式存储的管理方法 217
6.5 参数传递补遗 219
6.5.1 参数传递的方法 220
6.5.2 不同参数传递方法比较 221
习题六 222
第7章 目标代码生成 225
7.1 简单代码生成器 225
7.1.1 待用信息与活跃信息 226
7.1.2 代码生成算法 228
7.1.3 寄存器分配 230
7.1.4 源程序到目标代码生成示例 232
7.2 汇编指令到机器代码翻译概述 235
习题七 241
第8章 符号表与错误处理 243
8.1 符号表 243
8.1.1 符号表的作用 243
8.1.2 符号表的组织 244
8.1.3 分程序结构语言符号表建立 245
8.1.4 非分程序结构语言符号表建立 249
8.1.5 常用符号表结构 249
8.1.6 符号表内容 251
8.2 错误处理 252
8.2.1 语法错误校正 252
8.2.2 语义错误校正 259
习题八 261
第9章 并行编译技术简介 263
9.1 并行计算机体系结构 263
9.1.1 向量计算机 263
9.1.2 共享存储器多处理机 264
9.1.3 分布式存储器大规模并行计算机 264
9.2 并行编译技术 265
9.2.1 并行编译技术的概念 265
9.2.2 并行编译系统的功能和结构 266
9.3 自动并行编译 268
9.3.1 依赖关系分析 268
9.3.2 程序转换及数据分布 270
9.3.3 调度 271
参考文献 273
附录1 8086/8088指令码汇总表 274
附录2 8086/8088指令编码空间表 279
- 《第一性原理方法及应用》李青坤著 2019
- 《计算机组成原理解题参考 第7版》张基温 2017
- 《高等院校保险学专业系列教材 保险学原理与实务》林佳依责任编辑;(中国)牟晓伟,李彤宇 2019
- 《刑法归责原理的规范化展开》陈璇著 2019
- 《教师教育系列教材 心理学原理与应用 第2版 视频版》郑红,倪嘉波,刘亨荣编;陈冬梅责编 2020
- 《单片机原理及应用》庄友谊 2020
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《计算机组成原理 第2版》任国林 2018
- 《化工原理课程设计》刘建周主编 2018
- 《会计学原理》邵瑞庆主编 2019
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《《走近科学》精选丛书 中国UFO悬案调查》郭之文 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《中医骨伤科学》赵文海,张俐,温建民著 2017
- 《美国小学分级阅读 二级D 地球科学&物质科学》本书编委会 2016
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019
- 《强磁场下的基础科学问题》中国科学院编 2020
- 《小牛顿科学故事馆 进化论的故事》小牛顿科学教育公司编辑团队 2018
- 《小牛顿科学故事馆 医学的故事》小牛顿科学教育公司编辑团队 2018
- 《高等院校旅游专业系列教材 旅游企业岗位培训系列教材 新编北京导游英语》杨昆,鄢莉,谭明华 2019