编译原理与技术PDF电子书下载
- 电子书积分:11 积分如何计算积分?
- 作 者:张昱,陈意云编著
- 出 版 社:北京:高等教育出版社
- 出版年份:2010
- ISBN:9787040298390
- 页数:283 页
第1章 引论 1
1.1 编译器概述 1
1.1.1 词法分析 1
1.1.2 语法分析 3
1.1.3 语义分析 3
1.1.4 中间代码生成 4
1.1.5 代码优化 4
1.1.6 代码生成 5
1.1.7 符号表管理 5
1.1.8 阶段的分组 5
1.1.9 解释器 7
1.2 编译器技术的应用 7
1.2.1 高级语言的实现 7
1.2.2 针对计算机体系结构的优化 8
1.2.3 新计算机体系结构的设计 9
1.2.4 程序翻译 10
1.2.5 提高软件开发效率的工具 10
习题 12
第2章 词法分析 13
2.1 词法记号及属性 13
2.1.1 词法记号、模式、词法单元 14
2.1.2 词法记号的属性 15
2.1.3 词法错误 16
2.2 词法记号的描述与识别 16
2.2.1 串和语言 16
2.2.2 正规式 17
2.2.3 正规定义 19
2.2.4 状态转换图 20
2.3 有限自动机 23
2.3.1 不确定的有限自动机 23
2.3.2 确定的有限自动机 25
2.3.3 NFA到DFA的变换 26
2.3.4 DFA的化简 29
2.4 从正规式到有限自动机 31
2.5 词法分析器的生成器 35
习题 38
第3章 语法分析 41
3.1 上下文无关文法 41
3.1.1 上下文无关文法的定义 42
3.1.2 推导 43
3.1.3 分析树 44
3.1.4 二义性 45
3.2 语言和文法 46
3.2.1 正规式和上下文无关文法的比较 46
3.2.2 分离词法分析器的理由 47
3.2.3 验证文法产生的语言 48
3.2.4 适当的表达式文法 48
3.2.5 消除二义性 50
3.2.6 消除左递归 50
3.2.7 提左因子 52
3.3 自上而下分析 52
3.3.1 自上而下分析的一般方法 52
3.3.2 LL(1)文法 54
3.3.3 递归下降的预测分析 55
3.3.4 非递归的预测分析 56
3.3.5 构造预测分析表 59
3.3.6 预测分析的错误恢复 60
3.4 自下而上分析 63
3.4.1 归约 63
3.4.2 句柄 64
3.4.3 用栈实现移进-归约分析 65
3.4.4 移进-归约分析的冲突 66
3.5 LR分析器 68
3.5.1 构造SLR分析表 68
3.5.2 LR分析算法 73
3.5.3 其他LR分析表构造概述 75
3.5.4 非二义且非LR的上下文无关文法 77
3.6 语法分析器的生成器 78
3.6.1 分析器的生成器Yacc 78
3.6.2 用Yacc处理二义文法 82
3.6.3 Yacc的错误恢复 84
习题 86
第4章 类型检查 91
4.1 语法制导的翻译 91
4.1.1 翻译方案 92
4.1.2 语法树 93
4.1.3 构造语法树的翻译方案 94
4.1.4 翻译方案中属性的自下而上计算 95
4.1.5 设计翻译方案的一些技巧 98
4.2 类型在编程语言中的作用 99
4.2.1 执行错误和安全语言 99
4.2.2 类型化语言和类型系统 99
4.2.3 类型化语言的优点 102
4.3 一个简单类型检查器的规范 102
4.3.1 一个简单的语言 103
4.3.2 类型表达式 103
4.3.3 类型检查 104
4.3.4 类型转换 105
4.4 类型表达式的等价 106
4.4.1 类型表达式的结构等价 107
4.4.2 类型表达式的名字等价 107
4.4.3 记录类型 108
4.4.4 类型表示中的环 109
习题 109
第5章 运行时存储空间的组织和管理 114
5.1 局部存储分配 115
5.1.1 过程 115
5.1.2 名字的作用域和绑定 116
5.1.3 活动记录 117
5.1.4 局部数据的布局 117
5.1.5 程序块 118
5.2 全局栈式存储分配 119
5.2.1 运行时内存的划分 120
5.2.2 活动树和运行栈 120
5.2.3 调用序列 122
5.2.4 栈上可变长度数据 125
5.2.5 悬空引用 126
5.3 非局部名字的访问 127
5.3.1 无过程嵌套的静态作用域 127
5.3.2 有过程嵌套的静态作用域 128
5.4 参数传递 131
5.4.1 值调用 131
5.4.2 引用调用 132
5.4.3 换名调用 132
5.5 堆管理 133
5.5.1 内存管理器 133
5.5.2 计算机内存分层 134
5.5.3 程序局部性 136
5.5.4 手工回收请求 136
习题 137
第6章 中间代码生成 149
6.1 中间语言 150
6.1.1 后缀表示 150
6.1.2 图形表示 150
6.1.3 三地址代码 151
6.1.4 静态单赋值形式 153
6.2 声明语句 154
6.2.1 过程中的声明 154
6.2.2 作用域信息的保存 155
6.2.3 记录的域名 157
6.3 赋值语句 158
6.3.1 符号表中的名字 158
6.3.2 数组元素的地址计算 159
6.3.3 数组元素地址计算的翻译方案 160
6.3.4 类型转换 163
6.4 布尔表达式和控制流语句 164
6.4.1 布尔表达式 164
6.4.2 控制流语句的中间代码结构 165
6.4.3 布尔表达式的回填 166
6.4.4 控制流语句的翻译 168
6.4.5 开关语句的翻译 169
6.4.6 过程调用的翻译 171
习题 172
第7章 代码生成和代码优化 178
7.1 代码生成器设计中的问题 178
7.1.1 目标程序 178
7.1.2 指令选择 179
7.1.3 寄存器分配 180
7.1.4 计算次序选择 180
7.2 目标语言 181
7.2.1 目标机器的指令集 181
7.2.2 指令代价 182
7.3 基本块和流图 184
7.3.1 基本块 184
7.3.2 基本块的优化 185
7.3.3 流图 186
7.3.4 下次引用信息 187
7.4 一个简单的代码生成器 188
7.4.1 寄存器描述和地址描述 189
7.4.2 代码生成算法 190
7.4.3 寄存器选择函数 190
7.4.4 为变址和指针语句产生代码 192
7.4.5 条件语句 193
7.5 代码优化概述 194
7.5.1 优化的主要源头 194
7.5.2 一个实例 194
7.5.3 公共子表达式删除 197
7.5.4 复写传播 199
7.5.5 死代码删除 199
7.5.6 代码外提 200
7.5.7 强度削弱和归纳变量删除 200
习题 202
第8章 编译系统和运行系统 217
8.1 C语言的编译系统 217
8.1.1 预处理器 218
8.1.2 汇编器 219
8.1.3 连接器 221
8.1.4 目标文件的格式 222
8.1.5 符号解析 224
8.1.6 静态库 225
8.1.7 可执行目标文件及装入 227
8.1.8 动态连接 228
8.1.9 处理目标文件的一些工具 230
8.2 Java语言的运行系统 230
8.2.1 Java虚拟机语言简介 231
8.2.2 Java虚拟机 232
8.2.3 即时编译器 233
习题 235
第9章 面向对象语言的编译 239
9.1 面向对象语言的概念 239
9.1.1 对象和对象类 239
9.1.2 继承 240
9.1.3 信息封装 242
9.2 方法的编译 242
9.3 继承的编译方案 245
9.3.1 单一继承的编译方案 246
9.3.2 多重继承的编译方案 248
习题 253
附录 255
附录1 PL/O语言及其实现 255
附录2 基于PL/O语言的课程实践选题 283
参考文献 284
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《异质性条件下技术创新最优市场结构研究 以中国高技术产业为例》千慧雄 2019
- 《Prometheus技术秘笈》百里燊 2019
- 《中央财政支持提升专业服务产业发展能力项目水利工程专业课程建设成果 设施农业工程技术》赵英编 2018
- 《药剂学实验操作技术》刘芳,高森主编 2019
- 《林下养蜂技术》罗文华,黄勇,刘佳霖主编 2017
- 《脱硝运行技术1000问》朱国宇编 2019
- 《催化剂制备过程技术》韩勇责任编辑;(中国)张继光 2019
- 《信息系统安全技术管理策略 信息安全经济学视角》赵柳榕著 2020
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《全国高等中医药行业“十三五”创新教材 中医药学概论》翟华强 2019
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《习近平总书记教育重要论述讲义》本书编写组 2020
- 《办好人民满意的教育 全国教育满意度调查报告》(中国)中国教育科学研究院 2019
- 《高等数学试题与详解》西安电子科技大学高等数学教学团队 2019
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《教育学考研应试宝典》徐影主编 2019
- 《语文教育教学实践探索》陈德收 2018
- 《家庭音乐素养教育》刘畅 2018