图书介绍

编译原理2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载

编译原理
  • 胡延忠编著(湖北工业大学计算机学院) 著
  • 出版社: 武汉:华中科技大学出版社
  • ISBN:7560940773
  • 出版时间:2007
  • 标注页数:187页
  • 文件大小:7MB
  • 文件页数:198页
  • 主题词:编译程序-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

编译原理PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 绪论1

1.1 程序设计语言1

1.2 编译程序2

1.3 编译程序的工作过程2

1.3.1 词法分析(lexical analyzer)2

1.3.2 语法分析(syntax analyzer)3

1.3.3 语义分析和中间代码生成(intermediate code generator)4

1.3.4 代码优化(source code optimizer)5

1.3.5 代码生成(target code generator)5

1.4 编译程序的逻辑结构6

1.5 编译程序的生成6

1.5.1 编译程序的移植7

1.5.2 编译程序的“自编译方式”7

1.5.3 LEX和YACC7

习题7

第2章 文法和语言8

2.1 语言的描述8

2.1.1 字母表和符号串8

2.1.2 符号串及其运算8

2.2 文法的形式定义和文法的分类11

2.2.1 文法的形式定义13

2.2.2 直接推导和规范推导14

2.2.3 句型、句子和句柄15

2.2.4 语言的形式定义16

2.2.5 Chomsky文法的分类18

2.2.6 文法之间的关系20

2.2.7 上下文无关文法20

2.3 语法树与文法的二义性22

2.3.1 语法树22

2.3.2 文法的二义性24

2.4 文法的限制和文法的变换26

2.4.1 文法的限制26

2.4.2 文法的等价变换27

习题28

第3章 词法分析与有穷自动机29

3.1 词法分析的任务和方法29

3.1.1 单词类型及二元式编码29

3.1.2 词法分析的任务30

3.1.3 词法分析程序的实现方法30

3.2 正规式与正规集31

3.3 有穷自动机32

3.3.1 DFA的定义33

3.3.2 DFA的表示33

3.3.3 不确定的有穷自动机34

3.4 正规文法、正规式、有穷自动机的等价转换35

3.4.1 正规文法与正规式的相互转换35

3.4.2 正规式与FA的相互转换37

3.4.3 正规文法与FA的相互转换40

3.4.4 NFA到DFA的转换40

3.5 词法分析器的设计42

3.5.1 词法分析器的数据流图42

3.5.2 词法分析器的设计技术44

习题46

第4章 自顶向下分析49

4.1 上下文无关文法与语法分析49

4.1.1 上下文无关文法的定义49

4.1.2 推导50

4.2 带回溯的自顶向下分析52

4.3 左递归的消除53

4.3.1 消除直接左递归53

4.3.2 消除间接左递归54

4.4 不带回溯的自顶向下分析的基本原理54

4.5 提取左因子和FIRST集55

4.6 FOLLOW集和SELECT集56

4.6.1 FOLLOW集56

4.6.2 SELECT集58

4.7 递归下降分析法与预测分析法59

4.7.1 递归下降分析法59

4.7.2 预测分析法61

习题64

第5章 自底向上分析66

5.1 自底向上分析的分析思想66

5.2 移进—归约分析66

5.2.1 归约66

5.2.2 句柄67

5.2.3 用栈实现移进—归约分析68

5.3 算符优先分析69

5.3.1 算符优先分析法概述69

5.3.2 算符优先文法70

5.3.3 算符优先分矩阵72

5.3.4 算符优先分析的算法73

5.4 LR分析75

5.4.1 LR分析器的工作原理和过程75

5.4.2 LR控制程序算法设计78

5.5 LR(0)分析与SLR(1)分析79

5.5.1 LR(0)分析79

5.5.2 SLR(1)分析83

习题85

第6章 语法制导翻译与中间代码的生成87

6.1 语义分析87

6.2 语法制导翻译87

6.3 属性文法88

6.3.1 综合属性90

6.3.2 继承属性90

6.3.3 属性依赖图91

6.3.4 属性计算次序92

6.3.5 S属性文法的自下而上计算93

6.3.6 L属性文法的自上而下计算97

6.3.7 L属性文法的自下而上计算100

6.4 常见中间代码的形式103

6.4.1 逆波兰表示103

6.4.2 四元式和三元式104

习题107

第7章 运行时的存储分配108

7.1 程序运行时的存储器组织的基本思想108

7.1.1 数据区109

7.1.2 静态数据分配方案109

7.1.3 动态数据分配方案110

7.2 活动记录110

7.3 静态存储分配和动态存储分配111

7.3.1 静态存储分配111

7.3.2 动态存储分配113

7.4 过程调用的实现118

7.4.1 过程调用119

7.4.2 过程返回119

7.5 参数传递机制124

7.5.1 值传递124

7.5.2 引用传递124

7.5.3 值结果传递125

7.5.4 名字传递126

习题127

第8章 代码优化和代码生成128

8.1 代码优化的概念128

8.2 局部优化130

8.2.1 常用的局部优化技术130

8.2.2 基本块的DAG表示132

8.2.3 使用DAG方法进行局部优化133

8.3 控制流分析和循环优化136

8.3.1 控制流分析与循环体的识别137

8.3.2 以深度为主循环的查找139

8.3.3 循环优化141

8.4 数据流分析和全局优化143

8.4.1 单路径数据流分析143

8.4.2 全路径数据流分析147

8.4.3 其他数据流分析实例149

8.4.4 全局优化150

8.5 代码生成153

8.5.1 代码生成要考虑的主要问题153

8.5.2 基本块的代码生成155

8.5.3 基于树重写的代码生成157

习题160

附录A 实验任务162

附录B 编译程序源代码167

参考文献187

热门推荐