《计算机高级语言编译原理与方法》求取 ⇩

第一章引论1

1.1 翻译程序1

1.2为什么需要编译程序3

1.2.1 模块性4

1.2.2 静态解释与动态解释6

1.2.3 机器无关性6

1.2.4 语言标准化7

1.2.5 程序语言特征8

1.3 编译程序的开销8

1.4编译程序的工作过程9

1.4.1 分析10

1.4.2 综合11

1.5 编译程序的结构11

1.6 编译程序的组织方式14

1.7编译程序的位置15

1.8 程序的移植与可移植性16

1.9 程序的可再入性16

1.10 编译自动化17

1.11 小结18

第二章形式语言理论介绍19

2.1语言成份19

2.1.1 符号与字母表20

2.1.2 符号串21

2.2产生式文法和语言22

2.2.1 形式语言理论历史简述23

2.2.2 产生式文法24

2.2.3 文法24

2.2.4 上下文无关文法25

2.2.5 上下文无关文法的形式定义26

2.2.6 如何用上下文无关文法定义语言28

2.3文法分类30

2.3.1 0型文法30

2.3.2 1型文法30

2.3.3 上下文无关文法(2型文法)32

2.3.4 右线性文法和正规言语法(3型文法)33

2.3.5 文法分类的意义34

2.4语言和语法树36

2.4.1 句型、句子和语言36

2.4.2 树形表示36

2.4.3 语法树40

2.4.4 产生式树42

2.5文法的一些特性45

2.5.1 无用非终结符号45

2.5.2 不可达文法符号46

2.5.3 可空非终结符号48

2.5.4 最左、最右推导,规范推导48

2.5.5 二义性51

2.5.6 文法举例54

2.6分析方法简介56

2.6.1 自上而下分析56

2.6.2 确定的自上而下分析器59

2.6.3 确定的自下而上分析器63

2.6.4 文法在内存中的表示66

练习68

第三章有穷自动机73

3.1 概述73

3.2有穷自动机的形式定义77

3.2.1 状态转换表79

3.2.2 状态转换图79

3.2.3 构形和移动81

3.2.4 自动机的等价性82

3.2.5 非确定的有穷自动机82

3.3NDFSA到DFSA的转换87

3.3.1 空移环路的寻找和消除87

3.3.2 消余空移89

3.3.3 利用状态转换表消除空移92

3.3.4 确定化——子集法95

3.3.5 确定化——造表法100

3.3.6 消余不可达状态105

3.3.7 确定的有穷自动机的化简106

3.3.8 从化简后的DFSA到程序表示111

3.3.9 小结113

3.4 正规文法与有穷自动机113

3.4.1 从正规文法到FSA113

3.4.2 从FSA到正规文法115

3.5正规表达式与FSA116

3.5.1 正规表达式的定义116

3.5.2 正规表达式的CFG118

3.5.3 正规表达式与FSA的对应性119

3.5.4 正规表达式到NDFSA M的转换119

3.5.5 NDFSA M到正规表达式的转换125

3.5.6 从正规文法到正规表达式128

3.6 DFSA在计算机中的表示132

第四章词法分析135

4.1 词法分析概述135

4.2 单词符号137

4.3 扫描程序的设计139

4.4标识符的处理146

4.4.1 类型的机内表示147

4.4.2 标识符的语义表示152

4.4.3 符号表(标识符表)156

4.4.4 标识符处理的基本思想157

4.5 设计词法分析程序的直接方法159

4.6 与设计扫描程序相关的几个问题161

练习162

第五章语法分析——自上而下分析167

5.1非确定的下推自动机168

5.1.1 PDA的形式定义168

5.1.2 PDA的构形和移动171

5.1.3 上下文无关语言与PDA174

5.2消余左递归方法178

5.2.1 文法的左递归性178

5.2.2 用扩展的BNF表示法消除左递归179

5.2.3 直接改写法182

5.2.4 消余所有左递归的算法183

5.3LL(k)文法185

5.3.1 LL(1)文法的判断条件186

5.3.2 FIRST,FOLLOW,SELECT的构造方法187

5.4确定的LL(1)分析器的构造190

5.4.1 构造分析表M的算法191

5.4.2 LL(1)分析器的总控算法193

5.5 LL(k)文法的几个结论195

5.6递归下降分析程序及其设计196

5.6.1 框图设计198

5.6.2 程序设计201

练习204

第六章自下而上分析和优先分析方法207

6.1 概述207

6.2 短语和句柄208

6.3 移进——归约方法210

6.4非确定的自下而上分析器213

6.4.1 拓广的PDA与上下文无关语言的等价性215

6.5有关文法的一些关系219

6.5.1 关系219

6.5.2 布尔矩阵和关系222

6.5.3 Warshall 算法224

6.6简单优先分析方法225

6.6.1 优先关系225

6.6.2 简单优先关系的直接构造方法227

6.6.3 简单优先关系的形式化构造方法229

6.6.4 简单优先文法及其分析算法230

6.6.5 简单优先分析方法的局限性235

6.7简符优先分析方法236

6.7.1 算符优先文法236

6.7.2 OPG优先关系的构造238

6.7.3 素短语及句型的分析240

6.7.4 算符优先分析算法242

6.8优先函数及其构造244

6.8.1 Bell方法245

6.8.2 Floyd方法247

6.8.3 两种方法的比较248

6.9 两种优先分析方法的比较250

练习250

第七章自下而上的LR(K)分析方法253

7.1 LR(k)分析方法概述253

7.2 LR(k)文法和LR(k)分析器254

7.3LR(0)分析表的构造260

7.3.1 规范句型的活前缀260

7.3.2 LR(0)项目261

7.3.3 文法G的拓广文法262

7.3.4 CLOSURE(I)函数262

7.3.5 goto(I,X)函数263

7.3.6 LR(0)项目集规范族264

7.3.7 有效项目267

7.3.8 例子269

7.3.9 LR(0)文法273

7.3.10 构造LR(0)分析表的算法273

7.3.11 构造LR(0)分析表的步骤小结275

7.4 SLR分析表的构造275

7.5 规范LR分析表的构造281

7.6 LALR分析表的构造290

7.7 无二义性规则的使用295

7.8LR分析方法小结299

7.8.1 LR分析程序299

7.8.2 LR分析表的自动构造299

7.8.3 文法间的关系300

7.8.4 LR文法之区别举例301

7.8.5 有关LR言语法的几个结论304

练习304

第八章语法制导翻译法306

8.1一般原理306

8.1.1 树变换311

8.2 简单SDTS和自上而下翻译器313

8.3简单后缀SDTS和自下而上翻译器318

8.3.1 后缀翻译319

8.3.2 IF-THEN-ELSE控制语句320

8.3.3 函数调用321

8.4抽象语法树的构造323

8.4.1 自下而上构造AST326

8.4.2 AST的拓广327

8.5属性文法328

8.5.1 L属性文法329

8.5.2 S属性文法330

8.6中间代码形式330

8.6.1 逆波兰表示330

8.6.2 逆波兰表示的推广331

8.6.3 四元式334

8.6.4 三元式336

8.7属性翻译文法的应用337

8.7.1 综合属性与自下而上定值337

8.7.2 继承属性和自上而下定值338

8.7.3 布尔表达式到四元式的翻译340

8.7.4 条件语句的翻译342

8.7.5 迭代语句的翻译344

练习349

第九章运行时的存贮组织与管理350

9.1 数据区和属性字351

9.2 基本数据类型的存贮分配354

9.3数组的存贮分配354

9.3.1 单块存贮方式354

9.3.2 信息向量与数组分配程序357

9.3.3 多块存贮方式359

9.4 记录结构的存贮分配359

9.5参数传递方式及其实现361

9.5.1 换名362

9.5.2 传值363

9.5.3 传地址363

9.5.4 传结果364

9.5.5 数组名用作实参365

9.5.6 过程名用作实参365

9.6栈式存贮分配法365

9.6.1 概述365

9.6.2 现行DISPLAY和现行数据区367

9.6.3 标识符的作用域370

9.6.4 分程序的入口和出口工作371

9.6.5 过程调用时的存贮管理375

9.7 FORTRAN存贮管理379

9.8 堆式存贮分配方法379

9.9 临时工作单元的存贮分配381

练习386

第十章符号表的组织和查找389

10.1 符号表的一般组织形式389

10.2 符号表中的数据390

10.3符号表的构造与查找392

10.3.1 线性查找392

10.3.2 折半法394

10.3.3 杂凑技术395

10.4 分程序结构的符号表399

练习403

第十一章优化404

11.1 优化概述404

11.2 基本块及其求法404

11.3 优化举例407

11.4利用变量的定义点进行优化411

11.4.1 变量的定义点411

11.4.2 循环中不变式的外提413

11.4.3 运算强度削弱413

11.4.4 公共表达式的消除414

11.4.5 常量合并415

11.5 循环优化417

11.6 借助DAG进行优化418

11.7 并行分支的优化421

11.8 窥孔优化422

11.9 小结423

练习424

第十二章化码生成426

12.1 概述426

12.2 假想的计算机模型427

12.3 从四元式生成代码428

12.4 从三元式生成代码430

12.5 从树型表示生成代码434

12.6 从逆波兰表示生成代码438

12.7 寄存器的分配440

练习441

第十三章翻译程序编写系统及并行编译系统443

13.1 翻译程序编写系统443

13.2 并行编译系统445

习题解答448

1994《计算机高级语言编译原理与方法》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由何炎祥编著 1994 北京:海洋出版社 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。

高度相关资料

计算机编译原理(1999 PDF版)
计算机编译原理
1999 北京:科学出版社
程序设计语言 编译原理( PDF版)
程序设计语言 编译原理
算法语言 计算方法(1978 PDF版)
算法语言 计算方法
1978
第四代计算机高级语言:FORTH(1988 PDF版)
第四代计算机高级语言:FORTH
1988
程序设计语言编译原理(1984.06 PDF版)
程序设计语言编译原理
1984.06 国防工业出版社
计算方法与算法语言(1976 PDF版)
计算方法与算法语言
1976
计算机高级语言精粹( PDF版)
计算机高级语言精粹
计算机原理及算法语言( PDF版)
计算机原理及算法语言
计算机算法语言(1990 PDF版)
计算机算法语言
1990 西安:陕西师范大学出版社
计算方法与算法语言(1981 PDF版)
计算方法与算法语言
1981 北京:人民教育出版社
计算方法与算法语言  上  计算方法(1981 PDF版)
计算方法与算法语言 上 计算方法
1981 北京:高等教育出版社
程序设计语言编译原理(1980 PDF版)
程序设计语言编译原理
1980 北京:国防工业出版社
计算机导论 原理与BASIC语言(1985 PDF版)
计算机导论 原理与BASIC语言
1985 西安:西北工业大学出版社
第四代计算机高级语言 FORTH(1988 PDF版)
第四代计算机高级语言 FORTH
1988 北京:人民邮电出版社
高级程序设计语言原理(1992 PDF版)
高级程序设计语言原理
1992 北京:航空工业出版社