新書推薦:
《
炙野(全2册)
》
售價:HK$
78.2
《
女人的胜利
》
售價:HK$
55.9
《
数据有道:数据分析+图论与网络+微课+Python编程(鸢尾花数学大系:从加减乘除到机器学习)
》
售價:HK$
266.6
《
500万次倾听:陪伤心的人聊聊
》
售價:HK$
53.8
《
英国商业500年(见证大国崛起与企业兴衰,启迪未来商业智慧。)
》
售價:HK$
80.6
《
万千心理·儿童心理治疗中的心智化:临床实践指导
》
售價:HK$
87.4
《
自我囚禁的人:完美主义的心理成因与自我松绑(破除你对完美主义的迷思,尝试打破自我评价过低与焦虑的恶性循环)
》
售價:HK$
66.1
《
周易
》
售價:HK$
44.6
|
內容簡介: |
王一宾、陈义仁主编的《编译原理》共分9章:第1章简要介绍了编译程序的基本概念、工作过程和逻辑结构。第2章介绍了文法和语言的形式化定义以及Chomsky文法分类等相关内容。第3章主要介绍了词法分析器的设计原理,以及正规表达式与有限自动机的相关内容。第4章主要介绍自上而下的语法分析方法,首先分析自上而下分析方法的一般思想及其所遇到的问题,然后介绍这些问题的解决方案,最后介绍两种不带回溯的自上而下语法分析算法:递归下降分析法和LL1分析法。第5章主要介绍自下而上的语法分析方法,首先介绍自下而上语法分析方法的一般思想及其核心问题,然后根据其核心问题的不同解决方案,介绍两种自下而上语法分析算法:算符优先分析法和LR分析法。第6章介绍了语法制导翻译与语义分析及中间代码生成的有关内容,给出了如何在语法分析的同时进行语义加工并产生出中间代码的方法。第7章主要介绍符号表的作用与内容、符号表的组织与管理等相关内容。第8章介绍了代码优化的有关内容,主要涉及基本块内的局部优化和循环优化。第9章讨论目标代码生成的有关内容,讲述了如何由中间代码产生出最终的目标代码。
|
目錄:
|
第1章 编译程序概论
1.1 编程语言与翻译系统
1.1.1程序设计语言
1.1.2 常用的高级语言
1.1.3 编译程序的概念
1.2 编译程序的工作过程
1.2.1 词法分析
1.2.2 语法分析
1.2.3 语义分析和中间代码产生
1.2.4 代码优化
1.2.5 目标代码生成
1. 3编译程序的逻辑结构
1.3.1 编译程序的总体框架
1.3.2 编译程序的表格管理
1.3.3 编译程序中的错误及出错处理
1.3.4 编译程序的分遍处理
1.3.5 编译前端与后端
1.4 编译技术应用
1.4.1 高级语言的实现
1.4.2 针对计算机体系结构的优化
1.4.3 新计算机体系结构的设计
1.4.4 程序翻译
1.4.5 提高软件开发效率的工具
1.5 本章小结
习题1
第2章 文法和语言
2.1 符号和符号串
2.2 文法和语言的形式定义
2.2.1 文法和上下文无关文法
2.2.2 推导和语法分析树
2.2.3 句型、句子和语言
2.3 Chomsky文法分类
2.4 文法和语言的二义性
2.5 文法的等价及其变换
2.6 本章小结-.
习题2
第3章 词法分析与有限自动机
3.1 词法分析器的设计思想
3.1.1 词法分析器的任务和输出形式
3.1.2 将词法分析工作分离的考虑
3.2 词法分析器的设计
3.2.1 输入缓冲区和预处理程序
3.2.2 扫描器的工作原理
3.2.3 状态转换图与单词的识别
3.2.4 状态转换图的代码实现
实验一 词法分析器的设计
3.3 单词的描述工具
3.3.1 正规文法
3.3.2 正规式与正规集
3.4 有限自动机
3.4.1 确定有限自动机DFA
3.4.2 非确定有限自动机NFA
3.4.3 将NFA转换为DFA
3.4.4 确定有限自动机的化简
3.5正规文法、正规式和有限自动机的等价特性
3.5.1 正规文法与正规式的等价性
3.5.2 正规文法与有限自动机的等价性
3.5.3 正规式与有限自动机的等价性
3.6 词法分析器的自动构造工具——LEX
3.7 本章小结
习题3
第4章 自上而下语法分析方法
4.1 语法分析的任务和分析方法
4.2 自上而下分析的基本思想和面临的问题
4.2.1 自上而下分析的基本思想一
4.2.2 自上而下分析存在的困难和缺陷
4.3 左递归和回溯的消除
4.3.1 消除直接左递归
4.3.2 消除间接左递归
4.3.3 提取左公因子消除回溯
4.4 LL1分析法
4.4.1 FIRST集及其计算方法
4.4.2 FOLLOW集及其计算方法
4.4.3 LL1文法及LL1判定条件
4.4.4 LL1分析方法
4.5 不带回溯的自上而下分析方法
4.5.1 递归下降分析程序
4.5.2 预测分析程序
4.6 LL1分析中的错误处理
实验二 语法分析器设计之一——预测分析程序
4.7本章小结
习题4
第5章 自下而上语法分析方法
5.1 自下而上分析的一般思想和面临的问题
5.1.1 归约和“移进一归约”分析法
5.1.2 短语、句柄和最左素短语
5.1.3 规范归约与规范推导
5.1. 4 自下而上分析的核心问题和分析方法
5.1.5 语法分析栈的使用与语法树的表示
5.2 算符优先分析法
5.2.1 算符文法和算符优先文法
5.2.2 FIRSTVT集和LASTVT集
5.2.3 算符优先关系表及优先函数
5.2.4 算符优先分析算法及其特点
5.2.5 算符优先分析中的出错处理
实验三 语法分析器设计之二——算符优先分析程序
5.3 LR分析法
5.3.1 LR分析器的工作原理
5.3.2 LR0分析器
5.3.3 SLR1分析器
5.3.4.LR1分析器
5.3.5 LALR1分析器
5.3.6 二义文法在LR分析中的应用
5.3.7 LR分析中的出错处理
实验四 语法分析器设计之三——LR分析程序
5.4 语法分析器的自动产生工具——YACC
5.5本章小结
习题5
第6章 语法制导翻译和语义分析
6.1 属性文法与语法制导翻译
6.1.1 属性及属性文法
6.1.2 综合属性与继承属性
6.1.3 S-属性文法与L一属性文法
6.1.4 基于属性文法的语法制导翻译
6.2 语义分析和中间代码的产生
6.2.1 语义分析的任务
6.2.2 常见的中间代码形式
6.3 简单算术表达式及赋值语句的翻译
6.4 布尔表达式的翻译
6.4.1 布尔表达式的翻译方法
6.4.2 控制语句中布尔表达式的翻译
6.5 控制结构的翻译
6.5.1 if语句的翻译
6.5.2 while语句的翻译
6.5.3 for语句的翻译
6.5.4 goto语句的翻译
6.6 说明语句的翻译
6.6.1 简单说明语句的翻译
6.6.2 过程中的说明
6.7 数组的翻译
6.7.1 数组元素的地址计算
6.7.2 赋值语句中数组元素的翻译
6.8 过程调用语句的翻译
6.8.1 参数传递的方式
6.8.2 过程调用的处理
6.9 本章小结
习题6
第7章 符号表
7.1 符号表的作用与内容
7.1.1 符号表的作用
7.1. 2 符号表的内容与操作
7.2 符号表的组织与管理
7.2.1 符号表的组织结构
7.2.2 符号表的构造与查找
7.3 名字的作用范围
7.4 本章小结
习题7
第8章代码优化
8.1 优化概述
8.2 局部优化
8.2.1 基本块及流图
8.2.2 基本块的DAG表示及其应用
8.3 循环优化
8.3.1 代码外提
8.3.2 强度削弱
8.3.3 删除归纳变量
8.4 本章小结
习题8
第9章 目标代码生成
9.1 代码生成概述
9.2 目标机器模型
9.3 一种简单的代码生成算法
9.3.1 活跃信息与待用信息
9.3.2 寄存器和变量地址描述
9.3.3 简单代码生成算法
9.3.4 寄存器分配
9.4 本章小结
习题9
参考文献
|
|