当前位置:首页 > 工业技术
普通高等学校计算机专业特色教材  编译原理  第2版
普通高等学校计算机专业特色教材  编译原理  第2版

普通高等学校计算机专业特色教材 编译原理 第2版PDF电子书下载

工业技术

  • 电子书积分:10 积分如何计算积分?
  • 作 者:徐国定编著
  • 出 版 社:北京:高等教育出版社
  • 出版年份:2007
  • ISBN:9787040214017
  • 页数:249 页
图书介绍:编译原理是高等学校计算机专业的一门专业基础课程。本书系统地介绍程序语言编译程序的构造方法,内容涉及词法分析、句法分析、语义分析、目标代码生成、代码优化和出错处理。为了让读者深刻理解编译程序的工作过程,本书以自动机理论为模型叙述经典的词法分析和句法语义分析的方法。此外,还给出了编译程序编写工具的原理和代码生成的详细过程。本书力图使读者对编译程序的工作原理有一个完整的了解,并具有设计编译程序及其编写工具的基本能力。本书可以作为高等学校应用型本科计算机专业“编译原理”课程教材或参考书,也可作为计算机专业“专升本”或成人本科教育教材。
《普通高等学校计算机专业特色教材 编译原理 第2版》目录

第一章 概论 1

1.1 程序语言和语言处理程序 1

1.1.1 程序语言 1

1.1.2 语言处理程序 2

1.2 编译程序组成 3

1.2.1 词法分析 4

1.2.2 句法分析和语义分析 6

1.2.3 代码优化和代码生成 7

1.2.4 表格管理和出错恢复 8

习题 8

第二章 词法分析 9

2.1 正则表达式 9

2.1.1 字母表的概念 9

2.1.2 正则表达式的概念 11

2.2 有限状态自动机 12

2.2.1 有限状态自动机及其表示 12

2.2.2 正则表达式到有限状态自动机的转换 18

2.2.3 有限状态自动机的最小化 21

2.3 词法分析的实现 25

习题 33

第三章 LL和LR句法分析法 35

3.1 上下文无关文法和下推自动机 35

3.1.1 上下文无关文法 36

3.1.2 下推自动机 44

3.1.3 上下文无关文法和下推自动机的关系 48

3.2 自顶向下句法分析 50

3.2.1 LL(1)文法的概念 50

3.2.2 LL(1)文法的句法分析 53

3.2.3 非LL(1)文法问题 60

3.3 产生式选择集合的计算 64

3.3.1 关系和关系运算 64

3.3.2 产生式选择集合的计算 70

3.4 自底向上句法分析 76

3.4.1 概论 76

3.4.2 LR(0)句法分析 81

3.4.3 LR(1)文法 89

3.4.4 SLR(1)文法和LALR(1)文法 94

3.4.5 LR句法分析控制表的安排 104

习题 111

第四章 其他句法分析法 118

4.1 简单优先关系和简单优先文法 118

4.1.1 简单优先关系 118

4.1.2 简单优先文法 122

4.2 弱优先文法和简单混合策略优先文法 131

4.2.1 弱优先文法 131

4.2.2 简单混合策略优先文法 135

4.3 运算符优先文法 136

习题 143

第五章 语义处理 145

5.1 中间代码表示法 145

5.1.1 中间代码概论 145

5.1.2 后缀表示形式和解释程序 146

5.1.3 多元组表示 149

5.1.4 树 153

5.2 句法制导翻译 154

5.2.1 句法制导和翻译文法 154

5.2.2 属性文法和属性翻译文法 158

习题 163

第六章 符号表管理 165

6.1 符号表内容 165

6.2 符号表的数据结构 168

6.2.1 线性表 168

6.2.2 二叉树 169

6.2.3 散列法 170

6.3 块结构语言的符号表构造 171

习题 175

第七章 运行时刻存储管理 177

7.1 引言 177

7.2 过程调用记录 178

7.3 块结构语言的非局部量的访问 181

7.4 数组和下标变量 189

7.4.1 数组 189

7.4.2 下标变量 192

7.5 形式参数和实在参数 193

7.5.1 按访问调用 193

7.5.2 按值调用 194

7.5.3 数组 194

7.5.4 过程 195

7.5.5 标号 195

7.6 过程调用和返回 196

7.6.1 过程调用和返回任务的划分 196

7.6.2 过程调用和返回语句的翻译 197

习题 197

第八章 常见程序结构的翻译 200

8.1 算术表达式的翻译 200

8.2 布尔表达式的优化翻译 202

8.3 顺序控制结构的翻译 205

8.3.1 if语句的翻译 205

8.3.2 for语句的翻译 207

8.3.3 go to语句的翻译 209

习题 210

第九章 代码生成和代码优化 212

9.1 概述 212

9.2 寄存器和临时变量的管理 215

9.2.1 寄存器管理 215

9.2.2 基地址寄存器的加载 217

9.2.3 临时变量管理 218

9.3 算术表达式的代码生成 221

9.3.1 寄存器分配子程序 221

9.3.2 保存寄存器的值 222

9.3.3 寄存器加载 223

9.3.4 取变量子程序 224

9.3.5 关于加法四元组的代码生成的描述 225

9.4 代码生成的进一步讨论 226

9.4.1 与转向有关的中间代码的目标代码生成 226

9.4.2 过程调用中间代码的目标代码生成 229

9.4.3 过程说明入口处的处理简介 231

9.5 与机器无关的代码优化概述 233

9.5.1 基本块和基本块的值 233

9.5.2 数据流分析简介 237

习题 241

第十章 出错恢复 243

10.1 引言 243

10.2 词法分析的出错恢复 244

10.3 LR和LL句法分析的出错恢复 244

习题 247

参考文献 248

相关图书
作者其它书籍
返回顶部