图书介绍

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

编译原理
  • 蒋立源等编 著
  • 出版社: 西安:西北工业大学出版社
  • ISBN:7561203896
  • 出版时间:1993
  • 标注页数:325页
  • 文件大小:14MB
  • 文件页数:335页
  • 主题词:

PDF下载


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

下载说明

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

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

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

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

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

图书目录

第一章 绪论1

1.1 编译过程概述2

1.2 编译程序的逻辑结构3

1.2.1 词法分析程序4

1.2.2 语法分析程序5

1.2.3 语义分析程序6

1.2.4 中间代码生成6

1.2.5 代码优化程序7

1.2.6 目标代码生成程序8

1.2.7 错误检查和处理程序9

1.2.8 信息表管理程序9

1.3 编译程序的组织10

习题11

第二章 前后文无关文法和语言12

2.1 文法及语言的表示12

2.2 文法和语言的定义13

2.2.1 基本概念和术语13

2.2.2 文法和语言的形式定义15

2.3 句型的分析20

2.3.1 规范推导和规范归约21

2.3.2 语法树和二义性23

2.3.3 短语和句柄27

2.4 文法的化简和改造29

2.4.1 无用符号和无用产生式的删除29

2.4.2 ε-产生式的消除31

2.4.3 单产生式的消除33

2.5 文法和语言的Chomsky分类34

习题37

第三章 词法分析及词法分析程序41

3.1 设计扫描器时应考虑的几个问题41

3.1.1 源程序的输入及预处理41

3.1.2 词法分析阶段的必要性42

3.1.3 单词符号的内部表示43

3.1.4 识别标识符的若干约定和策略43

3.2 正规文法和状态转换图45

3.2.1 由正规文法构造状态转换图45

3.2.2 状态转换图的一种实现——状态矩阵法49

3.3.1 确定的有限自动机52

3.3 有限自动机52

3.3.2 非确定的有限自动机54

3.3.3 NFA与DFA的等价性55

3.3.4 具有ε动作的FA58

3.3.5 具有ε动作的NFA的确定化61

3.3.6 DFA状态数的最小化63

3.4 正规表达式与正规集66

3.4.1 正规表达式与正规集的定义67

3.4.2 由正规文法构造相应的正规式68

3.4.3 由正规式构造FA71

3.5 词法分析程序的实现73

3.5.1 词法分析程序的编写74

3.5.2 词法分析程序的自动生成77

习题82

上机实习题86

第四章 语法分析和语法分析程序89

4.1 自顶向下的语法分析89

4.1.1 消除文法的左递归91

4.1.2 带回溯的递归子程序法94

4.1.3 回溯的消除与LL(1)文法96

4.1.4 LL(1)分析器的工作原理97

4.1.5 LL(1)分析器的构造方法102

4.1.6 某些非LL(1)文法的改造103

4.2 自底向上的语法分析105

4.2.1 简单优先分析法107

4.2.2 算符优先分析法116

4.2.3 优先函数124

4.2.4 LR分析法130

4.3.1 YSP文件的结构147

4.3 语法分析程序的自动生成工具——YACC147

4.3.2 YSP文件说明部分的组成149

4.3.3 YSP文件语法规则部分的组成150

4.3.4 程序部分151

4.3.5 二义性文法的处理151

4.3.6 YACC应用实例152

习题154

上机实习题161

第五章 语法制导翻译及中间代码生成163

5.1 引言163

5.2.1 逆波兰表示165

5.2 几种常见的中间语言165

5.2.2 四元式和三元式168

5.2.3 树形表示171

5.3 简单算术表达式和赋值语句的翻译172

5.4 布尔表达式的翻译176

5.5 一些控制语句的翻译181

5.5.1 语句标号和GOTO语句的翻译181

5.5.2 用于组织控制流程的一些语句的翻译184

5.5.3 循环语句的翻译192

5.5.4 情况语句的翻译195

5.6 含数组元素的算术表达式及赋值语句的翻译198

5.6.1 下标变量地址的计算199

5.6.2 含有下标变量的赋值语句的翻译201

5.7 过程说明和过程调用的翻译204

5.7.1 过程说明的翻译204

5.7.2 实参和形参间的信息传递205

5.7.3 过程语句的翻译209

5.8 类型说明与数组说明的翻译211

习题213

上机实习题217

第六章 符号表219

6.1 符号表的组织219

6.2 PASCAL符号表的建立与查找222

6.3 FORTRAN符号表的建立226

习题229

第七章 运行时的存贮组织与分配231

7.1 存贮组织231

7.1.1 运行时内存的划分231

7.1.2 活动记录232

7.2 运行时的分配策略233

7.2.1 静态分配233

7.2.2 栈式分配234

7.2.3 堆式分配236

7.3 FORTRAN的存贮组织与分配237

7.3.1 FORTRAN数据区及其组织237

7.3.2 COMMON语句的处理239

7.3.3 EQUIVALENCE语句的处理243

7.3.4 FORTRAN数据区的地址分配246

习题250

第八章 代码优化253

8.1 局部优化253

8.1.1 划分基本块的算法255

8.1.2 基本块的DAG表示255

8.1.3 利用DAG进行基本块上的优化处理258

8.1.4 含有数组元素、指针及过程调用的DAG261

8.2 数据流分析的若干问题263

8.2.1 控制流程图263

8.2.2 “到达-定值”数据流方程及“引用-定值”链264

8.2.3 “引用-定值”链的计算及应用268

8.2.4 活跃变量数据流方程269

8.2.5 “定值-引用”链271

8.3 循环优化274

8.3.1 循环的查找274

8.3.2 循环优化的某些项目278

习题291

上机实习题296

9.1 目标代码的形式297

第九章 目标代码生成297

9.2 一种假想的计算机模型299

9.3 一种代码生成程序的雏型301

9.3.1 待用信息302

9.3.2 寄存器描述符与地址描述符303

9.3.3 生成目标代码的算法304

9.4 DAG的代码生成307

9.5 全局寄存器分配309

习题312

上机实习题313

第十章 查错与改错315

10.1 语法错误的校正316

10.1.1 单词错误的校正316

10.1.2 自顶向下分析中的错误校正317

10.1.3 自底向上分析中的错误校正320

10.2 语义错误的校正322

10.2.1 遏止株连信息323

10.2.2 遏止重复信息323

习题324

参考文献325

热门推荐