编译原理

编译原理
作 者: 胡伦骏 徐兰芳 刘建农
出版社: 电子工业出版社
丛编项:
版权说明: 本书为公共版权或经版权方授权,请支持正版图书
标 签: 编译原理
ISBN 出版时间 包装 开本 页数 字数
未知 暂无 暂无 未知 0 暂无

作者简介

暂缺《编译原理》作者简介

内容简介

本书系统介绍了编译程序的一般构造原理、基本设计方法和主要实现技术。内容包括语言的基础知识、词法分析程序的设计原理和构造方法、各种语法分析技术、属性文法的基本概念和中间代码生成、符号表的构造、代码优化、目标代码生成、并行编译技术常识及运行时存储空间的组织等。 本书系统性较强,基本概念阐述清晰,通俗易懂,便于自学。在各章之后均附有本章小结及习题,书后附有习题参考答案。 本书可作为高等院校计算机专业教材,也可作为成人高等教育计算机专业本科生和专科起点本科生的教材,对相关工程技术人员也有参考价值。

图书目录

第1章 编译概述

1. 1 翻译程序与编译程序

1. 2 编译过程和编译程序的基本结构

1. 3 编译程序的生成方法

1. 4 编译技术在软件开发中的应用

本章小结

习题

第2章 文法和语言的基本知识

2. 1 概述

2. 2 字母表和符号串的基本概念

2. 2. 1 字母表和符号串

2. 2. 2 符号串的运算

2. 3 文法和语言的形式定义

2. 3. 1 形式语言

2. 3. 2 文法的形式定义

2. 3. 3 语言的形式定义

2. 3. 4 规范推导和规范归纳

2. 3. 5 递归规则与文法的递归性

2. 4 短语. 直接短语和句柄

2. 4. 1 短语和直接短语

2. 4. 2 句柄

2. 5 语法树与文法的二义性

2. 5. 1 推导和语法树

2. 5. 2 文法的二义性

2. 5. 3 文法二义性的消除

2. 6 文法和语言的分类

2. 7 有关文法的实用限制和变换

本章小结

习题

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

3. 1 词法分析程序的功能

3. 2 单词符号及输出单词的形式

3. 2. 1 语言的单词符号

3. 2. 2 词法分析程序输出单词的形式

3. 3 语言单词符号的两种定义方式

3. 3. 1 正规式与正规集

3. 3. 2 正规文法与正规式

3. 4 正规式与有穷自动机

3. 4. 1 确定有穷自动机(DFA)

3. 4. 2 非确定有穷自动机(NFA)

3. 4. 3 由正视表达式R构造NFA

3. 4. 4 NFA确定化为DFA的方法

3. 4. 5 DFA的化简

3. 4. 6 有穷自动机到正规式的转换

3. 5 正规文法与有穷自动机

3. 5. 1 右线性正规文法到有穷自动机的转换方法

3. 5. 2 左线性正规文法到有穷自动机的转换方法

3. 5. 3 有穷自动机到正视文法的转换方法

3. 6 词法分析程序的编写方法

本章小结

习题

第4章 语法分析

4. 1 语法分析程序的功能

4. 2 自上而下语法分析法

4. 2. 1 非确定的自上而下分析法的思想

4. 2. 2 文法的左递归性和回溯的消除

4. 2. 3 某些非LL(1)文法到LL(1)文法的改写

4. 2. 4 递归下降分析法

4. 2. 5 预测分析法与预测分析表的构造

4. 3 自下而上分析法的一般原理

4. 4 算符优先分析法

4. 4. 1 方法概述

4. 4. 2 算符优先文法的定义

4. 4. 3 算符优先关系表的构造

4. 4. 4 算符优先分析算法的设计

4. 4. 5 优先函数的构造

4. 4. 6 算符优先分析法的局限性

4. 5 LR分析法

4. 5. 1 LR分析器的工作原理和过程

4. 5. 2 LR(0)分析法

4. 5. 3 SLR(1)分析法

4. 5. 4 LR(1)分析法

4. 5. 5 LALP(1)分析法

4. 5. 6 LR分析法对二义性文法的应用

本章小结

习题

第5章 语法制导翻译技术和中间代码生成

5. 1 概述

5. 2 属性文法

5. 3 语法制导翻译概述

5. 4 中间语言

5. 4. 1 逆波兰式

5. 4. 2 三元式和树形表示

5. 4. 3 四元式和三地址代码

5. 5 自底向上语法制导翻译

5. 5. 1 简单算术表达式和赋值语句的翻译

5. 5. 2 布尔表达式的翻译

5. 5. 3 控制语句的翻译

5. 5. 4 循环语句的翻译

5. 5. 5 简单说明语句的翻译

5. 5. 6 含数组元素的赋值语句的翻译

5. 6 递归下降语法制导的翻译

本章小结

习题

第6章 符号表的组织和管理

6. 1 符号表的作用

6. 2 符号表的组织

6. 3 符号表的建立和查找

本章小结

习题

第7章 代码优化

7. 1 优化概述

7. 2 局部优化

7. 2. 1 划分基本块的方法

7. 2. 2 基本块的DAG表示

7. 2. 3 利用DAG进行基本块的优化处理

7. 3 循环优化

7. 3. 1 程序流图与循环

7. 3. 2 循环查找

7. 3. 3 循环优化

7. 4 窥孔优化

本章小结

习题

第8章 运行时的存储组织与管理

8. 1 概述

8. 2 静态存储分配

8. 3 栈式存储分配

8. 3. 1 简单栈式存储分配

8. 3. 2 嵌套过程的栈式存储分配

8. 4 堆式存储分配

8. 5 临时变量的存储分配

本章小结

习题

第9章 目标代码生成

9. 1 概述

9. 2 假想的计算机模型

9. 3 简单代码生成器

9. 3. 1 待用信息与活跃信息

9. 3. 2 代码生成算法

9. 3. 3 寄存器的分配

9. 4 代码生成器的自动生成技术

本章小结

习题

第10章 并行编译技术基本常识

10. 1 并行编译技术的引入

10. 2 并行编译系统的功能和结构

10. 2. 1 并行编译系统的功能

10. 2. 2 并行编译系统的结构

10. 3 向量语言编译技术

10. 3. 1 向量语法处理

10. 3. 2 向量结构优化

10. 4 共享存储器并行机并行编译技术

10. 4. 1 预编译

10. 4. 2 可再入的目标代码

本章小结

习题

附录A 词法分析程序生成器LEX

A. 1 词法分析程序生成器LEX简介

A. 2 LEX输入文件的格式

A. 3 正规表达式的LEX约定

A. 4 LEX源程序中的规则部分

A. 5 FLEX的命令选项

A. 6 LEX程序示例

附录B 语法分析程序生成器YACC

B. 1 语法分析程序YACC简介

B. 2 YACC输入文件的格式

B. 3 YACC各部分的书写格式

B. 3. 1 定义部分

B. 3. 2 规则部分

B. 3. 3 辅助程序部分

B. 4 YACC的内置名称和定义机制

B. 5 YACC源程序示例

附录C 编译程序实验

C. 1 词法分析

C. 1. 1 实验目的

C. 1. 2 实验要求

C. 1. 3 词法分析程序主要算法思想

C. 2 语法分析

C. 2. 1 实验目的

C. 2. 2 实验要求

C. 2. 3 语法分析程序的算法思想

C. 3 语义分析

C. 3. 1 实验目的

C. 3. 2 实验要求

C. 4 算符优先分析法

C. 5 实验实例

附录D 习题参考答案

参考文献