编译原理

编译原理

张幸儿, 戴新宇, 编著

出版社:人民邮电出版社

年代:2009

定价:32.0

书籍简介:

本书把整个编译程序的各个部分系统而有机地贯穿起来,让读者对编译程序的结构有一个系统而感性的认识,对编译程序的构造有更深的理解,从而更好地掌握编译原理。

书籍目录:

第1章概论1

1.1编译程序概况1

1.1.1编译程序的引进1

1.1.2编译程序与高级程序设计语言的联系3

1.1.3编译原理课程的教学内容、教学目标和要求6

1.2编译程序的构造6

1.2.1编译程序的功能6

1.2.2编译程序的组成7

1.2.3编译程序的种类8

1.3编译程序的实现9

1.3.1编译程序实现要点9

1.3.2样本语言的轮廓10

1.3.3开发环境11

本章小结11

复习思考题12

第2章编译程序构造的基础知识13

2.1符号串与符号串集合13

2.2文法与语言16

2.2.1文法及其应用16

2.2.2语言的概念26

2.2.3文法与语言的分类27

2.3句型分析30

2.3.1句型分析与语法分析树30

2.3.2二义性33

2.3.3分析技术及其分类34

2.4语法分析树的计算机生成38

本章小结40

复习思考题41

习题41

第3章词法分析42

3.1概况42

3.2词法分析程序的手工实现43

3.2.1实现要点43

3.2.2属性字的设计44

3.2.3标识符的处理47

3.2.4词法分析程序的设计和编写53

3.3词法分析程序的自动生成58

3.3.1词法分析程序自动生成的基本思想58

3.3.2正则表达式60

本章小结70

复习思考题71

习题71

第4章语法分析自顶向下分析技术72

4.1自顶向下分析技术概况72

4.1.1讨论前提72

4.1.2自顶向下分析技术要解决的基本问题73

4.1.3自顶向下分析技术的实现思想与应用条件73

4.1.4消去左递归的文法等价变换75

4.2无回溯的自顶向下分析技术79

4.2.1应用条件79

4.2.2递归下降分析技术80

4.2.3预测分析技术86

4.3预测识别程序句型分析的计算机实现94

4.3.1预测分析表的存储表示94

4.3.2语法分析树的构造及输出95

本章小结97

复习思考题97

习题98

第5章语法分析自底向上分析技术99

5.1自底向上分析技术概况99

5.1.1讨论前提99

5.1.2基本实现方法100

5.2LR(1)分析技术102

5.2.1LR(1)分析技术与LR(1)文法102

5.2.2LR(1)识别程序的计算机实现119

5.2.3识别程序自动构造122

5.3其他的自底向上分析技术126

5.3.1算符优先分析技术概况126

5.3.2应用算符优先分析技术句型分析128

5.3.3优先函数129

本章小结130

复习思考题130

习题131

第6章语义分析与目标代码生成132

6.1概况132

6.1.1语义分析的概念132

6.1.2属性与属性文法134

6.1.3语法制导定义与翻译方案的设计141

6.1.4类型表达式149

6.2说明部分的翻译151

6.2.1常量定义的翻译152

6.2.2变量说明的翻译153

6.2.3函数定义的翻译156

6.2.4结构类型的翻译160

6.3类型检查161

6.3.1表达式的类型检查161

6.3.2语句的类型检查163

6.4目标代码的生成164

6.4.1与目标代码生成相关的若干要点165

6.4.2虚拟机168

6.4.3控制语句的翻译169

6.5翻译方案的实现195

6.5.1实现要点196

6.5.2语义子程序及其执行201

本章小结205

复习思考题206

习题206

第7章中间表示代码与代码优化208

7.1概况208

7.1.1代码优化与代码优化程序208

7.1.2代码优化的分类209

7.2源程序的中间表示代码210

7.2.1四元式序列211

7.2.2生成四元式序列的翻译方案的设计213

7.2.3从四元式序列生成目标代码215

7.2.4其他的中间表示代码219

7.3基本块的代码优化222

7.3.1基本块优化的种类222

7.3.2基本块优化的实现225

7.4与循环有关的优化230

7.4.1循环优化的种类230

7.4.2循环优化的基础234

7.4.3循环优化的实现241

7.5全局优化的实现思想244

7.6窥孔优化245

7.6.1冗余指令删除246

7.6.2控制流优化247

7.6.3代数化简247

7.6.4特殊指令的使用247

本章小结248

复习思考题248

习题248

第8章程序错误的检查与校正250

8.1概述250

8.1.1程序错误检查的必要性250

8.1.2错误的种类250

8.1.3相关的基本概念251

8.2词法错误的复原与校正252

8.2.1词法错误的种类252

8.2.2词法错误的校正253

8.3语法错误的复原与校正253

8.3.1语法错误的复原253

8.3.2语法错误的校正254

8.4语义错误255

8.4.1语义错误的种类255

8.4.2语义错误检查措施256

本章小结258

复习思考题258

习题258

第9章目标代码的运行259

9.1概述259

9.2运行时刻的存储管理260

9.2.1变量情况分析260

9.2.2静态存储分配262

9.2.3栈式存储分配262

9.2.4堆式存储分配262

9.3符号表263

9.3.1符号表的组织263

9.3.2符号表的数据结构267

9.4运行时刻支持系统268

本章小结269

复习思考题269

习题270

第10章虚拟机目标程序的解释程序的研制271

10.1虚拟机指令操作码种类271

10.2设计要点273

10.2.1操作数的处理273

10.2.2控制转移指令的处理274

10.2.3操作码的确定与模拟执行275

10.2.4输入输出指令的处理275

10.3数据结构设计276

10.4符号模拟执行虚拟机目标程序的解释程序276

本章小结281

复习思考题281

参考文献282

内容摘要:

  本书系统地介绍了高级程序设计语言编译程序的构造原理,重点讨论了词法分析、语法分析、语义分析和目标代码的生成与优化。全书共10章,各章末有本章小结,许多章还附有习题。  本书实践性强,在编译程序构造的主要环节给出了实现之考虑,提供了具体而实际可行的实现方法和技巧供读者参考。本书可作为计算机及相关专业编译原理课程的教材,同时也是计算机软件技术人员、研究生以及广大计算机爱好者的极佳参考。  本书系统而简洁地介绍编译程序的构造原理,内容主要包括:概论、编译程序构造的基础知识、词法分析、语法分析、语义分析与目标代码生成、中间表示代码与代码优化、程序错误的检查与校正、目标代码的运行,以及虚拟机目标程序的解释程序的编制。各章开始于本章导读,各章末有本章小结、复习思考题以及习题。本书突出实践性,在编译程序构造的各个环节中,提供了具体可行的实现方法和技巧,供读者参考。  本书可作为计算机及相关专业的编译原理课程教材,也可作为计算机软件技术人员、研究生及广大计算机爱好者的参考用书。

书籍规格:

书籍详细信息
书名编译原理站内查询相似图书
9787115215123
如需购买下载《编译原理》pdf扫描版电子书或查询更多相关信息,请直接复制isbn,搜索即可全网搜索该ISBN
出版地北京出版单位人民邮电出版社
版次1版印次1
定价(元)32.0语种简体中文
尺寸26 × 19装帧平装
页数 140 印数 3000

书籍信息归属:

编译原理是人民邮电出版社于2009.11出版的中图分类号为 TP314 的主题关于 编译程序-程序设计-高等学校-教材 的书籍。