编译原理教程(第3版) [平装] 9787560624631

配送至
$ $ USD

《编译原理教程(第3版)》系统地介绍了编译程序的设计原理及实现技术,主要内容包括:绪论、词法分析、语法分析、语义分析和中间代码生成、代码优化、目标程序运行时存储空间的组织、目标代码生成、符号表与错误处理等。 在内容的组织上,《编译原理教程(第3版)》强调知识的实用性,将编译的基本理论与具体的实现技术有机地结合起来,既注重了理论的完整性,化繁为简,又将理论融于具体的实例中,化难为易,以达到准确、清楚地阐述相关概念和原理的目的。《编译原理教程(第3版)》注重各章节对理论阐述的条理性,书中给出的例子也具有较强的实用性与连贯性,使读者对编译的各个阶段有一个全面、直观的认识。《编译原理教程(第3版)》采用的算法全部由C语言描述,各章均附有习题。 《编译原理教程(第3版)》可作为计算机本科专业的教材,也可作为计算机软件工程人员的参考资料。
编辑推荐
《编译原理教程(第3版)》是高等院校计算机科学与技术专业“十一五”规划教材之一。
目录
第一章 绪论 1.1 程序设计语言和编译程序 1.2 编译程序的历史及发展 1.3 编译过程和编译程序结构 1.4 编译程序的开发 1.5 构造编译程序所应具备的知识内容 习题 第二章 词法分析 2.1 词法分析器的设计方法 2.1.1 单词符号的分类与输出形式 2.1.2 状态转换图 2.2 一个简单的词法分析器示例 2.2.1 C语言子集的单词符号表示 2.2.2 C语言子集对应的状态转换图 2.2.3 状态转换图的实现 2.3 正规表达式与有限自动机简介 2.3.1 正规表达式与正规集 2.3.2 有限自动机 2.4 正规表达式到有限自动机的构造 2.4.1 由正规表达式构造等价的非确定有限自动机(NIFA) 2.4.2 NFA的确定化 2.4.3 确定有限自动机(I)FA)的化简 2.4.4 正规表达式到有限自动机构造示例 2.5 词法分析器的自动生成 习题二 第三章 语法分析 3.1 文法和语言 3.1.1 文法和语言的基本概念 3.1.2 形式语言分类 3.1.3 正规表达式与上下文无关文法 3.2 推导与语法树 3.2.1 推导与短语 3.2.2 语法树与二义性 3.3 自顶向下的语法分析 3.3.1 递归下降分析法 3.3.2 LL(1)分析法 3.4 自底向上的语法分析 3.4.1 自底向上分析原理 3.4.2 算符优先分析法 3.5 规范归约的自底向上语法分析方法 3.5.1 LR分析器的工作原理 3.5.2 LR(0)分析器 3.5.3 SLR(1)分析器 3.5.4 LR(1)分析器 3.5.5 LALR分析器 3.5.6 二义文法的应用 3.5.7 LR分析器应用与拓展 习题三 第四章 语义分析和中间代码生成 4.1 概述 4.1.1 语义分析的概念: 4.1.2 语法制导翻译方法 4.2 属性文法 4.2.1 文法的属性 4.2.2 属性文法 4.3 几种常见的中间语言 4.3.1 抽象语法树 4.3.2 逆波兰表示法 4.3.3 三地址代码 4.4 表达式及赋值语句的翻译 4.4.1 简单算术表达式和赋值语句的翻译 4.4.2 布尔表达式的翻译 4.5 控制语句的翻译 4.5.1 条件语句if的翻译 4.5.2 条件循环语句while的翻译 4.5.3 三种基本控制结构的翻译 4.5.4 多分支控制语句case的翻译 4.5.5 语句标号和转移语句的翻译 4.6 数组元素的翻译 …… 第五章 代码优化 第六章 目标程序运行时存储空间的组织 第七章 目标代码生成 第八章 符号表与错误处理
文摘
版权页: 插图: LR分析器的推理过程是依据“历史”来展望“未来”,因此LR分析器同样具有智能性,但是这种智能却是有限的。作为归约过程的“历史”材料的积累虽不困难(已保存于栈中),但是“展望”材料的汇集却很不容易。因为根据历史推测未来,即使是推测未来的一个符号,也常常存在着非常多的不同可能性,所以在把“历史”和“展望”材料综合在一起时,复杂性就大为增加了。因此,具体实现LR分析器的功能时通常采用某种限制性措施,尽可能使出现的状态减少,只有这样才能提高效率并易于实现。如简单LR——极有使用价值的SLR(1)方法,它只在栈中保留已扫描过的那段输入符号的部分信息,即“历史”,并根据这些信息和未来的一串符号决定下一步的操作。SLR(1)的这种做法使得状态数大为减少,因此可以高效率地实现。 我们可以将上述方法和思想运用于人工智能领域。通过分析可以发现,人工智能的推理按目标可分为两类:一类是对未知目标的推理;一类是对已知目标的推理。对事先无法知道的目标的推理一般采用常规的智能搜索方法——试探法或穷举法;而对已知目标的推理,虽然仍可采用试探法或穷举法,但能否采用其它更加简单有效的方法呢?LR分析器中的“历史”类同于人工智能中已搜索过的路径,而LR分析器对未来的“展望”恰好就是对已知目标的“展望”。LR分析器是在“目标己知”这个特定条件下对人工智能常规搜索方法的一种简化。由于LR分析器推理的目标确定,故其效率远远高于常规的人工智能搜索方法。对那些事先可以分析出目标的推理问题,如智能化教学系统、智能化管理系统以及智能控制机床等,都可以采用LR分析器方法。LR分析器是一种基于目标的智能推理方法,它适用于目标确定的智能化推理问题。
ISBN
出版社西安电子科技大学出版社
作者胡元义
尺寸16