《数字计算机的编译程序构造 上》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:D.格里斯著;仲萃豪等译
  • 出 版 社:北京:科学出版社
  • 出版年份:1976
  • ISBN:
  • 页数:210 页
图书介绍:

目录 1

第一章 引言 1

1.1 编译程序、汇编程序、解释程序 1

1.2 编译过程概述 3

1.3 编译程序构造的一些例子 8

第二章 文法和语言 13

2.1 文法的讨论 13

2.2 符号和符号串 17

2.3 文法和语言的形式定义 21

2.4 语法树和二义性 27

2.5 句型的分析问题 34

2.6 有关文法的一些关系 38

2.7 构造关系的传递闭包 42

2.8 有关文法的实用限制 47

2.9 其它的语法表示方法 50

2.10 形式语言理论概观及其参考资料 54

2.11 总的回顾 57

第三章 扫描程序 59

3.1 引言 59

3.2 正则表达式和有穷状态自动机 62

3.3 编写扫描程序 77

3.4 扫描程序的构造程序 86

3.5 AED RWORD系统 94

3.6 历史概述 101

第四章 自顶向下识别算法 102

4.1 带回溯的自顶向下识别算法 102

4.2 自顶向下分析算法中的问题及其解决办法 112

4.3 递归子程序方法 119

4.4 历史概述 123

5.1 优先关系及其应用 124

第五章 简单优先文法 124

5.2 优先关系的定义和构造 128

5.3 分析算法 135

5.4 优先函数 138

5.5 构造优先文法的困难 143

5.6 历史概述 147

第六章 其它自底向上识别算法 148

6.1 算符优先文法 149

6.2 高阶优先文法 161

6.3 限界上下文文法 170

6.4 转换矩阵 177

6.5 历史概述 187

第七章 产生式语言 191

7.1 产生式语言 191

7.2 使用PL 201

7.3 调用语义程序 207

7.4 历史概述 209

第八章 运行时的存贮组织 211

8.1 数据区和区头向量 212

8.2 属性单元 215

8.3 基本数据类型的存贮分配 216

整型变量,实型变量,逻辑变量,指示字变量 217

8.4 数组的存贮分配 217

向量,矩阵,多维数组,内情向量 223

8.5 字符串的存贮分配 223

8.6 结构的存贮分配 225

Hoare记录,PL/1结构,Standish数据结构 231

8.7 实在参数与形式参数之间的对应 231

引用调用,值调用,结果调用,哑变元,名字调用,数组名字和过程名字作实在参数用8.8 FORTRAN存贮管理 238

8.9 ALGOL存贮管理 239

8.10 动态存贮分配 254

8.11 历史概述 262

9.1 关于表的组织 263

第九章 组织各种符号表 263

9.2 不加整理的表和加以整理的表 265

9.3 散列地址编码 267

再散列,拉链,散列函数 278

9.4 树结构的符号表 278

9.5 分程序结构的符号表 279

基本组织,分程序表,开和闭的分程序,登入和查找 285

9.6 历史概述 285

第十章 符号表中的数据 286

10.1 描述信息 286

10.2 结构分量的描述信息 291

第十一章 源程序的内部形式 301

11.1 运算符和运算对象 302

11.2 波兰表示 304

11.3 四元组 311

11.4 三元组,树和间接三元组 313

11.5 基本块 317

11.6 历史概述 318

第十二章 介绍语义程序 320

12.1 翻译中缀形式为波兰表示 320

12.2 翻译中缀形式为四元组 324

12.3 实现语义程序和栈 328

12.4 采用自顶向下句法分析方法的语义处理 330

12.5 历史概述 333

第十三章 类似ALGOL结构的语义程序 335

13.1 语义程序的表示方式 336

13.2 条件语句 339

13.3 标号和转移 342

13.4 变量和表达式 345

13.5 循环语句 349

13.6 布尔表达式优化 351

14.1 分配变量的地址 361

自底向上和自顶向下方法 361

第十四章 运行时变量的存贮分配 361

14.2 对临时变量分配存贮 365

14.3 公用变量和等价变量 372

第十五章 错误校正 385

15.1 引言 385

15.2 校正语义错误 389

15.3 校正语法错误 393

第十六章 解释程序 402

第十七章 代码生成 413

17.1 引言 413

17.2 对简单算术表达式生成代码 416

17.3 运算对象用地址表示 429

17.4 把代码生成扩充到其他四元组类型 442

17.5 紧缩的代码生成 448

17.6 结果模块 452

第十八章 代码优化 464

18.1 基本块内的优化 465

18.2 适中的循环优化 474

18.3 更有效的优化 494

18.4 讨论和历史概述 506

第十九章 宏功能的实现 515

19.1 简单的宏功能方案 515

19.2 其他一些宏功能的特征 528

19.3 通用宏功能生成程序(GPM) 535

19.4 历史概述 542

第二十章 编写翻译程序的系统 545

20.1 引言 545

20.2 考察两个编译程序的编译程序 549

第二十一章 对编译程序编写者的一些提示 561

附录 本书所用的程序设计语言 577

参考资料 587