编译原理基础(第2版)
出版时间:
2008-09
版次:
2
ISBN:
9787560611112
定价:
35.00
装帧:
平装
开本:
16开
纸张:
胶版纸
页数:
311页
字数:
473千字
正文语种:
简体中文
76人买过
-
《编译原理基础(第2版)》系统地介绍了程序设计语言翻译的基本原理与技术,内容包括编译器构造的所有重要阶段:词法分析、语法分析、语义分析与中间代码生成、代码优化、运行时的存储分配以及目标代码的生成等。《编译原理基础(第2版)》还介绍了编译器编写工具LEX和YACC的工作原理与使用方法,并对语法制导翻译与属性计算、类型与类型检查、数据流分析等编译器构造和程序分析技术中当前重点关注的原理和方法进行了讨论。
《编译原理基础(第2版)》既可以作为工科院校计算机专业或非计算机专业本科生与研究生的教材,也可以作为软件技术人员和程序设计语言爱好者的参考书。
《编译原理基础(第2版)》配有电子教案,有需要者可从出版社网站下载,免费提供。 第1章 引言
1.1 从面向机器的语言到面向人类的语言
1.2 语言之间的翻译
1.3 编译器与解释器
1.4 编译器的工作原理与基本组成
1.4.1 通用程序设计语言的主要成分
1.4.2 以阶段划分编译器
1.4.3 编译器各阶段的工作
1.4.4 编译器的分析/综合模式
1.4.5 编译器扫描的遍数
1.5 编译器的编写
1.6 本章小结
习题
第2章 词法分析
2.1 词法分析中的若干问题
2.1.1 记号、模式与单词
2.1.2 记号的属性
2.1.3 词法分析器的作用与工作方式
2.1.4 输入缓冲区
2.2 模式的形式化描述
2.2.1 字符串与语言
2.2.2 正规式与正规集
2.2.3 记号的说明
2.3 记号的识别——有限自动机
2.3.1 不确定的有限自动机(NondeterministicFiniteAutomata,NFA)
2.3.2 确定的有限自动机(DeterministicFiniteAutomata,DFA)
2.3.3 有限自动机的等价
2.4 从正规式到词法分析器
2.4.1 从正规式到NFA
2.4.2 从NFA到DFA
2.4.3 最小化DFA
2.4.4 DFA的“短路”计算
2.4.5 由DFA构造词法分析器
2.5 本章小结
习题
第3章 语法分析
3.1 语法分析的若干问题
3.1.1 语法分析器的作用
3.1.2 语法错误的处理原则
3.2 上下文无关文法
3.2.1 上下文无关文法的定义与表示
3.2.2 cFG产生语言的基本方法——推导
3.2.3 推导、分析树与语法树
3.2.4 二义性与二义性的消除
3.3 语言与文法简介
3.3.1 正规式与上下文无关文法
3.3.2 上下文有关文法
3.3.3 形式语言与自动机简介
3.4 自上而下语法分析
3.4.1 自上而下分析的一般方法
3.4.2 消除左递归
3.4.3 提取左因子
3.4.4 递归下降分析
3.4.5 预测分析器
3.5 自下而上语法分析
3.5.1 自下而上分析的基本方法
3.5.2 LR分析
3.6 LR(1)与LALR(1)分析
3.6.1 SLR分析器的弱点
3.6.2 LR(1)分析器
3.6.3 LALR(1)分析器
3.6.4 LR(1)与LALR(1)的关系
3.6.5 LR(1)与二义文法的关系
3.7 编译器编写工具
3.7.1 词法分析器生成器LEx
3.7.2 语法分析器生成器YACC
3.7.3 语言识别器生成工具简述
3.8 本章小结
习题
第4章 静态语义分析
4.1 语法制导翻译简介
4.1.1 语法与语义
4.1.2 属性与语义规则
4.1.3 语义规则的两种形式
4.1.4 LR分析翻译方案的设计
4.1.5 递归下降分析翻译方案的设计
4.2 属性的计算
4.2.1 综合属性与自下而上分析
4.2.2 继承属性与自上而下分析
4.2.3 依赖图与属性计算
4.2.4 L-属性的增量分析
4.2.5 L-属性的自下而上计算
4.2.6 属性的空间分配
4.2.7 YACC源程序中的语法制导翻译
4.3 中间代码简介
4.3.1 后缀式
4.3.2 三地址码
4.3.3 图形表示
4.4 符号表简介
4.4.1 符号表条目
4.4.2 构成名字的字符串
4.4.3 名字的作用域
4.4.4 线性表
4.4.5 散列表
4.5 声明语句的翻译
4.5.1 变量的声明
4.5.2 数组变量的声明
4.5.3 过程的定义与声明
4.5.4 记录的域名
4.6 简单算术表达式与赋值句
4.6.1 简单变量的语法制导翻译
4.6.2 变量的类型转换
4.7 数组元素的引用
4.7.1 数组元素的地址计算
4.7.2 数组元素引用的语法制导翻译
4.8 布尔表达式
4.8.1 布尔表达式的作用与结构
4.8.2 布尔表达式的计算方法
4.8.3 数值表示与直接计算的语法制导翻译
4.8.4 短路计算的语法制导翻译
4.8.5 拉链与回填
4.9 控制语句
4.9.1 标号与无条件转移
4.9.2 条件转移
4.10 过程调用
4.11 类型检查
4.11.1 类型、类型系统与类型检查
4.11.2 类型系统
4.11.3 简单的类型检查
4.11.4 类型表达式的等价
4.11.5 多态函数的类型检查
4.11.6 特定多态的类型检查
4.12 本章小结
习题
第5章 运行环境
5.1 过程的动态特性
5.1.1 过程与活动
5.1.2 控制栈与活动记录
5.1.3 名字的绑定
5.2 运行时数据空间的组织
5.2.1 运行时内存的划分与数据空间的存储分配策略
5.2.2 静态与动态分配简介
5.3 栈式动态分配
5.3.1 控制栈中的活动记录
5.3.2 调用序列与返回序列
5.3.3 栈式分配中对非本地名字的访问
5.3.4 参数传递的实现
5.4 本章小结
习题
第6章 代码生成
6.1 代码生成的相关问题
6.2 简单的计算机模型
6.3 简单的代码生成器
6.3.1 基本块、流图与循环
6.3.2 下次引用信息与活跃信息
6.3.3 简单的代码生成
6.4 本章小结
习题
第7章 代码优化
7.1 局部优化
7.1.1 基本块的优化
7.1.2 窥孔优化
7.1.3 表达式的优化代码生成
7.2 独立于机器的优化
7.2.1 运行实例:快排序
7.2.2 全局公共子表达式
7.2.3 复写传播(CopyPropagation)
7.2.4 死代码消除(Dead-CodeElimination)
7.2.5 代码外提(CodeMotion)
7.2.6 归纳变量与强度削弱
7.3 数据流分析简介
7.3.1 数据流抽象
7.3.2 数据流分析模式
7.3.3 基本块上的数据流模式
7.3.4 到达定值(ReachingDefinitions)
7.3.5 活跃变量(LiveVatribale)
7.3.6 可用表达式(AvailabalExpression)
7.3.7 小结
7.4 数据流分析的数学基础
7.4.1 半格(Semilattices)
7.4.2 转换函数(TransferFunctions)
7.4.3 通用框架的迭代算法
7.4.4 数据流解的意义
7.5 本章小结
习题
参考文献
-
内容简介:
《编译原理基础(第2版)》系统地介绍了程序设计语言翻译的基本原理与技术,内容包括编译器构造的所有重要阶段:词法分析、语法分析、语义分析与中间代码生成、代码优化、运行时的存储分配以及目标代码的生成等。《编译原理基础(第2版)》还介绍了编译器编写工具LEX和YACC的工作原理与使用方法,并对语法制导翻译与属性计算、类型与类型检查、数据流分析等编译器构造和程序分析技术中当前重点关注的原理和方法进行了讨论。
《编译原理基础(第2版)》既可以作为工科院校计算机专业或非计算机专业本科生与研究生的教材,也可以作为软件技术人员和程序设计语言爱好者的参考书。
《编译原理基础(第2版)》配有电子教案,有需要者可从出版社网站下载,免费提供。
-
目录:
第1章 引言
1.1 从面向机器的语言到面向人类的语言
1.2 语言之间的翻译
1.3 编译器与解释器
1.4 编译器的工作原理与基本组成
1.4.1 通用程序设计语言的主要成分
1.4.2 以阶段划分编译器
1.4.3 编译器各阶段的工作
1.4.4 编译器的分析/综合模式
1.4.5 编译器扫描的遍数
1.5 编译器的编写
1.6 本章小结
习题
第2章 词法分析
2.1 词法分析中的若干问题
2.1.1 记号、模式与单词
2.1.2 记号的属性
2.1.3 词法分析器的作用与工作方式
2.1.4 输入缓冲区
2.2 模式的形式化描述
2.2.1 字符串与语言
2.2.2 正规式与正规集
2.2.3 记号的说明
2.3 记号的识别——有限自动机
2.3.1 不确定的有限自动机(NondeterministicFiniteAutomata,NFA)
2.3.2 确定的有限自动机(DeterministicFiniteAutomata,DFA)
2.3.3 有限自动机的等价
2.4 从正规式到词法分析器
2.4.1 从正规式到NFA
2.4.2 从NFA到DFA
2.4.3 最小化DFA
2.4.4 DFA的“短路”计算
2.4.5 由DFA构造词法分析器
2.5 本章小结
习题
第3章 语法分析
3.1 语法分析的若干问题
3.1.1 语法分析器的作用
3.1.2 语法错误的处理原则
3.2 上下文无关文法
3.2.1 上下文无关文法的定义与表示
3.2.2 cFG产生语言的基本方法——推导
3.2.3 推导、分析树与语法树
3.2.4 二义性与二义性的消除
3.3 语言与文法简介
3.3.1 正规式与上下文无关文法
3.3.2 上下文有关文法
3.3.3 形式语言与自动机简介
3.4 自上而下语法分析
3.4.1 自上而下分析的一般方法
3.4.2 消除左递归
3.4.3 提取左因子
3.4.4 递归下降分析
3.4.5 预测分析器
3.5 自下而上语法分析
3.5.1 自下而上分析的基本方法
3.5.2 LR分析
3.6 LR(1)与LALR(1)分析
3.6.1 SLR分析器的弱点
3.6.2 LR(1)分析器
3.6.3 LALR(1)分析器
3.6.4 LR(1)与LALR(1)的关系
3.6.5 LR(1)与二义文法的关系
3.7 编译器编写工具
3.7.1 词法分析器生成器LEx
3.7.2 语法分析器生成器YACC
3.7.3 语言识别器生成工具简述
3.8 本章小结
习题
第4章 静态语义分析
4.1 语法制导翻译简介
4.1.1 语法与语义
4.1.2 属性与语义规则
4.1.3 语义规则的两种形式
4.1.4 LR分析翻译方案的设计
4.1.5 递归下降分析翻译方案的设计
4.2 属性的计算
4.2.1 综合属性与自下而上分析
4.2.2 继承属性与自上而下分析
4.2.3 依赖图与属性计算
4.2.4 L-属性的增量分析
4.2.5 L-属性的自下而上计算
4.2.6 属性的空间分配
4.2.7 YACC源程序中的语法制导翻译
4.3 中间代码简介
4.3.1 后缀式
4.3.2 三地址码
4.3.3 图形表示
4.4 符号表简介
4.4.1 符号表条目
4.4.2 构成名字的字符串
4.4.3 名字的作用域
4.4.4 线性表
4.4.5 散列表
4.5 声明语句的翻译
4.5.1 变量的声明
4.5.2 数组变量的声明
4.5.3 过程的定义与声明
4.5.4 记录的域名
4.6 简单算术表达式与赋值句
4.6.1 简单变量的语法制导翻译
4.6.2 变量的类型转换
4.7 数组元素的引用
4.7.1 数组元素的地址计算
4.7.2 数组元素引用的语法制导翻译
4.8 布尔表达式
4.8.1 布尔表达式的作用与结构
4.8.2 布尔表达式的计算方法
4.8.3 数值表示与直接计算的语法制导翻译
4.8.4 短路计算的语法制导翻译
4.8.5 拉链与回填
4.9 控制语句
4.9.1 标号与无条件转移
4.9.2 条件转移
4.10 过程调用
4.11 类型检查
4.11.1 类型、类型系统与类型检查
4.11.2 类型系统
4.11.3 简单的类型检查
4.11.4 类型表达式的等价
4.11.5 多态函数的类型检查
4.11.6 特定多态的类型检查
4.12 本章小结
习题
第5章 运行环境
5.1 过程的动态特性
5.1.1 过程与活动
5.1.2 控制栈与活动记录
5.1.3 名字的绑定
5.2 运行时数据空间的组织
5.2.1 运行时内存的划分与数据空间的存储分配策略
5.2.2 静态与动态分配简介
5.3 栈式动态分配
5.3.1 控制栈中的活动记录
5.3.2 调用序列与返回序列
5.3.3 栈式分配中对非本地名字的访问
5.3.4 参数传递的实现
5.4 本章小结
习题
第6章 代码生成
6.1 代码生成的相关问题
6.2 简单的计算机模型
6.3 简单的代码生成器
6.3.1 基本块、流图与循环
6.3.2 下次引用信息与活跃信息
6.3.3 简单的代码生成
6.4 本章小结
习题
第7章 代码优化
7.1 局部优化
7.1.1 基本块的优化
7.1.2 窥孔优化
7.1.3 表达式的优化代码生成
7.2 独立于机器的优化
7.2.1 运行实例:快排序
7.2.2 全局公共子表达式
7.2.3 复写传播(CopyPropagation)
7.2.4 死代码消除(Dead-CodeElimination)
7.2.5 代码外提(CodeMotion)
7.2.6 归纳变量与强度削弱
7.3 数据流分析简介
7.3.1 数据流抽象
7.3.2 数据流分析模式
7.3.3 基本块上的数据流模式
7.3.4 到达定值(ReachingDefinitions)
7.3.5 活跃变量(LiveVatribale)
7.3.6 可用表达式(AvailabalExpression)
7.3.7 小结
7.4 数据流分析的数学基础
7.4.1 半格(Semilattices)
7.4.2 转换函数(TransferFunctions)
7.4.3 通用框架的迭代算法
7.4.4 数据流解的意义
7.5 本章小结
习题
参考文献
查看详情
-
全新
北京市朝阳区
平均发货29小时
成功完成率82.47%
-
八五品
福建省厦门市
平均发货12小时
成功完成率92.6%
-
八五品
山东省滨州市
平均发货9小时
成功完成率93.83%
-
编译原理基础(第2版)
批量上传,套装书可能不全,下单前咨询在线客服!图书都是8-9成新,少量笔记,不影响阅读使用!光盘、学习卡、附件等默认不带,有特殊要求,下单前请咨询客服!
九品
北京市通州区
平均发货9小时
成功完成率90.5%
-
九品
北京市东城区
平均发货25小时
成功完成率88.26%
-
八五品
湖南省长沙市
平均发货12小时
成功完成率91.51%
-
八五品
四川省成都市
平均发货10小时
成功完成率92.13%
-
八五品
天津市武清区
平均发货12小时
成功完成率94.52%
-
八五品
重庆市沙坪坝区
平均发货10小时
成功完成率90.34%
-
编译原理基础(第2版)
正版二手书,套装请联系客服再下单,批量上传有误差,均有笔记不影响使用,无赠品、光盘、MP3等
八五品
山东省济南市
平均发货8小时
成功完成率91.14%
-
八五品
重庆市沙坪坝区
平均发货8小时
成功完成率83.63%
-
九五品
陕西省西安市
平均发货4小时
成功完成率94.85%
-
九五品
江西省南昌市
平均发货17小时
成功完成率86.96%
-
八五品
湖北省咸宁市
平均发货16小时
成功完成率90.73%
-
八五品
湖北省咸宁市
平均发货12小时
成功完成率92.36%
-
九品
江西省南昌市
平均发货16小时
成功完成率88.04%
-
九品
陕西省西安市
平均发货12小时
成功完成率95.33%
-
八品
陕西省西安市
平均发货11小时
成功完成率89.74%
-
九品
上海市奉贤区
平均发货6小时
成功完成率91.95%
-
九五品
河北省保定市
平均发货14小时
成功完成率76.94%
-
八五品
陕西省西安市
平均发货10小时
成功完成率94.24%
-
八五品
江西省抚州市
平均发货17小时
成功完成率54.29%
-
八五品
江西省南昌市
平均发货9小时
成功完成率91.44%
-
八五品
山西省太原市
平均发货5小时
成功完成率95.86%
-
九品
陕西省西安市
平均发货2小时
成功完成率78.73%
-
九品
广东省东莞市
平均发货10小时
成功完成率84.29%
-
八五品
陕西省西安市
平均发货10小时
成功完成率94.14%
-
八五品
四川省成都市
平均发货8小时
成功完成率87.52%
-
七五品
江西省赣州市
平均发货10小时
成功完成率91.2%
-
九品
北京市大兴区
平均发货9小时
成功完成率84.98%
-
九五品
湖北省武汉市
平均发货16小时
成功完成率72.18%
-
八五品
河南省洛阳市
平均发货18小时
成功完成率83.92%
-
九品
山东省日照市
平均发货11小时
成功完成率79.07%
-
八五品
北京市昌平区
平均发货14小时
成功完成率86.42%
-
八五品
福建省厦门市
平均发货12小时
成功完成率94.87%
-
八五品
-
八五品
广东省广州市
平均发货7小时
成功完成率93.04%
-
九品
-
九五品
-
八五品
陕西省咸阳市
平均发货8小时
成功完成率96.74%
-
九品
江西省吉安市
平均发货51小时
成功完成率89.55%
-
九品
陕西省西安市
平均发货12小时
成功完成率85.47%
-
全新
湖北省武汉市
平均发货10小时
成功完成率81.56%
-
八五品
四川省成都市
平均发货5小时
成功完成率95.34%
-
八五品
四川省成都市
平均发货7小时
成功完成率96.52%
-
九品
江西省吉安市
平均发货51小时
成功完成率89.55%
-
编译原理基础(第2版) 刘坚 著 9787560611112
书籍批量上传,默认8成新左右、无光盘等附件(一定需要请联系客服确认),旧书保存完好,不影响学习和阅读。一般来说,①教材学习类书有或多或少的笔记;②考试做题的书,题目一般会有做过;③其他类书笔记一般很少或者没有(但要求一定没笔记的,要提前与客服沟通好再下单,否则本店不承担责任)。仓库发货之前还会再检查,确认没问题再发货的。多重检查,放心购买!
八五品
广东省东莞市
平均发货8小时
成功完成率95.45%
-
七五品
陕西省西安市
平均发货14小时
成功完成率86.51%
-
2008-09 印刷
九品
陕西省西安市
平均发货2小时
成功完成率78.73%
-
八五品
陕西省西安市
平均发货2小时
成功完成率78.73%