图书介绍

编译原理pdf电子书版本下载

编译原理
  • 苏运霖编 著
  • 出版社: 北京:机械工业出版社
  • ISBN:7111222784
  • 出版时间:2008
  • 标注页数:318页
  • 文件大小:17MB
  • 文件页数:328页
  • 主题词:编译程序-程序设计-高等学校-教材

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 语言和编译 6

1.4 程序设计语言的编译 7

1.5 一个语句的编译举例 9

1.6 编译的遍数 11

1.7 本书的组成 11

习题 13

第2章 文法和语言 14

2.1 预备知识 14

2.2 文法 15

2.3 语言 18

2.4 文法所生成的语言 20

2.5 图灵机 22

2.6 有关文法和语言的问题 29

习题 30

第3章 有限自动机和正则表达式 34

3.1 确定的有限自动机 34

3.2 不确定的有限自动机 37

3.3 带有ε的有限自动机 42

3.4 正则表达式 44

3.5 两路有限自动机 49

3.6 正则文法 53

3.7 关于正则语言的判定 61

习题 62

第4章 词法分析 66

4.1 词法分析的作用 67

4.2 词法分析程序的输出 76

4.3 错误处理 78

习题 78

第5章 上下文无关文法和下推自动机 80

5.1 上下文无关文法 80

5.2 上下文无关文法的性质 83

5.3 下推自动机 90

5.4 下推自动机和上下文无关语言 93

习题 98

第6章 语法分析 104

6.1 LL(1)语法分析 104

6.2 LL(1)文法的确定 107

6.3 LL(1)语法分析方法 110

6.4 自底向上的语法分析 115

6.5 LR(1)语法分析方法 118

6.5.1 LR(0)语法分析 118

6.5.2 SLR(1)语法分析 120

6.5.3 LALR(1)语法分析 122

6.5.4 LR(1)语法分析 124

6.5.5 LL(1)语法分析方法和LR(1)语法分析方法的比较 130

习题 132

第7章 属性文法及其分析 136

7.1 属性文法 136

7.2 依赖图和属性计算 139

7.2.1 动态属性计算 143

7.2.2 循环处理 145

7.3 L属性文法和S属性文法 146

习题 148

第8章 编译程序设计的代数方法 149

8.1 源语言 149

8.2 代数基础和推理语言 154

8.2.1 代数基础 155

8.2.2 推理语言 160

8.3 一个简单的编译程序 178

8.3.1 规范形式 178

8.3.2 规范形式的归结 179

8.3.3 目标机器 182

8.3.4 表达式的化简 183

8.3.5 控制的消除 185

8.3.6 数据求精 187

8.3.7 编译过程 191

8.4 过程、递归和参数 192

8.4.1 记号 193

8.4.2 过程 193

8.4.3 递归 195

8.4.4 带参数的程序 197

8.4.5 带参数的过程 199

8.4.6 带参数的递归 200

8.4.7 讨论 202

8.5 小结 203

习题 204

第9章 中间代码的生成 205

9.1 为什么需要有中间代码生成阶段 205

9.2 中间代码语言 205

9.2.1 图形表示 206

9.2.2 后缀表示 208

9.2.3 四元组代码 209

习题 223

第10章 纠错与优化 226

10.1 错误检测和恢复 226

10.2 语法错误检查 227

10.2.1 LL(1)分析程序的错误处理 229

10.2.2 LR(1)分析中的错误处理 229

10.3 语义错误检查 230

10.4 程序的优化 230

10.5 程序优化的几个主要途径 234

10.5.1 公共子表达式的删除 234

10.5.2 副本传播 234

10.5.3 废代码的删除 235

10.5.4 循环优化 236

习题 237

第11章 存储管理 239

11.1 全局分配策略 239

11.2 动态分配 242

11.2.1 栈式分配 242

11.2.2 堆式分配 243

11.3 存储空间的回收 245

11.3.1 基本垃圾收集算法 245

11.3.2 编译程序对垃圾收集程序的支持 246

11.3.3 引用计数 247

11.3.4 标记和扫描 248

11.3.5 两空间复制 249

11.3.6 紧缩 250

11.4 参数传递 250

11.4.1 值调用 251

11.4.2 引用调用 251

11.4.3 复写-恢复调用 251

11.4.4 换名调用 251

习题 252

第12章 目标代码生成 254

12.1 代码生成程序设计的有关问题 254

12.1.1 代码生成程序的输入 254

12.1.2 目标程序 255

12.1.3 存储管理 255

12.1.4 指令选择 255

12.1.5 寄存器分配 256

12.1.6 计算顺序的选择 257

12.1.7 代码生成的方法 257

12.2 目标机器MMIX 257

12.3 MMIX的汇编语言 274

12.4 MMIXAL目标代码的生成 279

12.4.1 表达式逆波兰表示的翻译 279

12.4.2 表达式三元式的翻译 280

12.4.3 表达式四元组形成的翻译 280

12.4.4 表达式的翻译 281

12.4.5 表达式的语法树形式的翻译 282

12.4.6 各种语句的翻译 282

习题 284

第13章 面向对象语言的编译 286

13.1 对象及其编译 286

13.2 对象的特征 287

习题 294

第14章 并行语言的编译 296

14.1 并行机和并行计算的提出 296

14.2 并行程序设计 298

14.2.1 共享变量和管程 299

14.2.2 消息传送模型 300

14.3 面向对象的语言 301

14.4 Linda元组空间 301

14.5 数据并行语言 303

14.6 隐式并行程序的代码生成 304

14.6.1 区域的类型 305

14.6.2 区域的形成 306

14.6.3 区域的几个调度算法 309

习题 309

第15章 网格计算的编译 310

15.1 网格计算的兴起与其内涵 310

15.2 网格计算模型 311

15.2.1 分组路由 312

15.2.2 线性阵列中的分组路由 313

15.3 网格计算的编译 315

习题 316

参考文献 318

精品推荐