编译原理及实现PDF电子书下载
- 电子书积分:10 积分如何计算积分?
- 作 者:姜淑娟,张辰,刘兵编著
- 出 版 社:北京:清华大学出版社
- 出版年份:2016
- ISBN:9787302435532
- 页数:233 页
第1章 引论 1
1.1 什么是编译程序 1
1.1.1 编译程序与高级程序设计语言的关系 1
1.1.2 高级语言源程序的执行过程 2
1.1.3 与编译器有关的程序 2
1.2 编译过程与编译程序的组织结构 3
1.2.1 编译过程概述 3
1.2.2 编译程序的组织结构 7
1.2.3 编译阶段的组合 8
1.3 编译程序的构造与实现 8
1.3.1 如何构造一个编译程序 8
1.3.2 编译程序的开发 9
1.3.3 编译程序的自动构造工具 9
习题 10
第2章 形式语言和有限自动机理论 12
2.1 文法和语言 12
2.1.1 字母表和符号串 12
2.1.2 文法和语言的形式化定义 14
2.1.3 语法分析树与文法二义性 17
2.1.4 文法和语言的分类 18
2.2 有限自动机 19
2.2.1 确定的有限自动机(DFA) 19
2.2.2 非确定的有限自动机(NFA) 21
2.2.3 N FA转换为等价的DFA 23
2.2.4 确定的有限自动机的化简 25
习题 27
第3章 词法分析 30
3.1 词法分析基本思想 30
3.1.1 词法分析需求分析 30
3.1.2 词法分析任务 30
3.1.3 词法分析方式 31
3.2 单词的描述工具 31
3.2.1 正规文法和正规式 31
3.2.2 正规式与有限自动机的等价性 32
3.2.3 正规文法和有限自动机的等价性 36
3.3 单词的识别 37
3.3.1 单词分类 37
3.3.2 单词的内部表示 38
3.3.3 单词的形式化描述 38
3.4 词法分析程序的设计及实现 39
3.4.1 词法分析程序的输入 39
3.4.2 扫描缓冲区及其预处理 39
3.4.3 由词法规则画出状态转换图 41
3.4.4 单词对应状态转换图的实现 42
3.5 词法分析程序的自动实现 43
3.5.1 Lex介绍 43
3.5.2 Lex语法基础 44
3.5.3 词法分析器自动构造 45
习题 48
第4章 语法分析 50
4.1 自顶向下的语法分析方法 50
4.1.1 包含回溯的自顶向下语法分析 50
4.1.2 回溯产生的原因与解决方法 52
4.1.3 递归下降分析法 55
4.1.4 LL(1)分析法与LL(1)分析器 57
4.2 自底向上的语法分析方法 62
4.2.1 “移进-归约”分析 62
4.2.2 规范归约与句柄 63
4.2.3 算符优先分析法 66
4.2.4 LR分析法 74
4.2.5 语法分析程序自动生成器YACC 96
习题 100
第5章 语法制导翻译与中间代码生成 102
5.1 两种翻译方法简介 102
5.2 属性文法 103
5.2.1 综合属性 104
5.2.2 继承属性 104
5.3 依赖图 105
5.4 语法制导翻译 107
5.4.1 S-属性文法与自底向上翻译 107
5.4.2 L-属性文法与自顶向下翻译 108
5.4.3 翻译模式 109
5.5 中间代码的形式 112
5.5.1 逆波兰表示法 112
5.5.2 三元式表示法 113
5.5.3 四元式表示法 114
5.5.4 图表示法 114
5.6 中间代码生成 115
5.6.1 说明语句的翻译 115
5.6.2 赋值语句的翻译 116
5.6.3 赋值语句中的布尔表达式的翻译 117
5.6.4 控制流语句中的布尔表达式的翻译 119
5.6.5 控制流语句的翻译 122
5.6.6 数组元素的翻译 128
5.6.7 函数调用的翻译 131
习题 133
第6章 运行时的存储组织与分配 135
6.1 概述 135
6.1.1 关于存储组织 135
6.1.2 函数(或过程)的活动记录 136
6.1.3 存储分配策略 137
6.2 静态存储分配 138
6.3 基于栈的运行时动态存储分配 139
6.3.1 简单栈式存储分配的实现 139
6.3.2 嵌套过程语言的栈式存储分配的实现 143
6.4 基于堆的动态存储分配的实现 147
6.5 参数传递 149
6.5.1 传值 149
6.5.2 传地址 150
习题 151
第7章 符号表 154
7.1 符号表的作用 154
7.2 符号表的内容 155
7.3 符号表的组织 157
7.3.1 符号表的数据结构 157
7.3.2 关键字域的组织 157
7.3.3 其他域的组织 158
7.4 符号表举例 162
7.4.1 无序表 162
7.4.2 有序表 162
7.4.3 散列符号表 162
7.4.4 栈式符号表 163
习题 164
第8章 代码优化 166
8.1 概述 166
8.2 局部优化 166
8.2.1 基本块的划分 167
8.2.2 基本块的优化 167
8.2.3 基本块的有向图表示 169
8.3 循环优化 175
8.3.1 控制流图 175
8.3.2 基本属性 176
8.3.3 支配结点和后必经结点 176
8.3.4 循环的查找 179
8.3.5 循环优化 180
8.4 全局优化 183
8.4.1 相关概念及数据流方程 183
8.4.2 可到达定义 184
8.4.3 结构化程序的数据流分析 186
8.4.4 数据流方程的迭代解 187
8.4.5 活跃变量分析 189
习题 192
第9章 目标代码生成 193
9.1 目标代码的形式 193
9.2 目标代码生成的主要问题 194
9.2.1 目标程序 194
9.2.2 指令选择 194
9.2.3 寄存器分配 195
9.2.4 计算次序选择 195
9.3 目标机器 196
9.3.1 目标机器的指令系统 196
9.3.2 指令开销 197
9.4 一个简单的代码生成器 198
9.4.1 寄存器描述和地址描述 198
9.4.2 代码生成算法 199
9.4.3 寄存器选择函数 199
9.4.4 为变址和指针语句产生代码 201
9.4.5 条件语句 201
9.5 寄存器分配的原则 202
习题 203
附录A 基于前端的编译程序算法 205
A.1 词法分析器的实现 205
A.2 递归下降语法分析器的实现 209
A.3 算法优先语法分析器的实现 222
A.4 LR语法分析器的实现 226
参考文献 232
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《第一性原理方法及应用》李青坤著 2019
- 《计算机组成原理解题参考 第7版》张基温 2017
- 《高等院校保险学专业系列教材 保险学原理与实务》林佳依责任编辑;(中国)牟晓伟,李彤宇 2019
- 《刑法归责原理的规范化展开》陈璇著 2019
- 《教师教育系列教材 心理学原理与应用 第2版 视频版》郑红,倪嘉波,刘亨荣编;陈冬梅责编 2020
- 《单片机原理及应用》庄友谊 2020
- 《通信电子电路原理及仿真设计》叶建芳 2019
- 《计算机组成原理 第2版》任国林 2018
- 《化工原理课程设计》刘建周主编 2018
- 《市政工程基础》杨岚编著 2009
- 《家畜百宝 猪、牛、羊、鸡的综合利用》山西省商业厅组织技术处编著 1959
- 《《道德经》200句》崇贤书院编著 2018
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《计算机网络与通信基础》谢雨飞,田启川编著 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《法语词汇认知联想记忆法》刘莲编著 2020
- 《培智学校义务教育实验教科书教师教学用书 生活适应 二年级 上》人民教育出版社,课程教材研究所,特殊教育课程教材研究中心编著 2019
- 《国家社科基金项目申报规范 技巧与案例 第3版 2020》文传浩,夏宇编著 2019
- 《流体力学》张扬军,彭杰,诸葛伟林编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019