编译原理-(第3版)

编译原理-(第3版)

作者:陈意云

出版社:高等教育出版社

出版年:2014-09-01

评分:5分

ISBN:9787040404913

所属分类:教辅教材

书刊介绍

编译原理-(第3版) 内容简介

《编译原理(第3版)/“十二五”普通高等教育本科国家级规划教材》介绍编译器构造的一般原理和基本实现方法,内容包括词法分析、语法分析、语义分析、中间代码生成、目标代码生成、独立于机器的优化和依赖于机器的优化等。除了介绍命令式编程语言的编译技术外,《编译原理(第3版)/“十二五”普通高等教育本科国家级规划教材》还介绍面向对象编程语言和函数式编程语言的实现技术。另外,《编译原理(第3版)/“十二五”普通高等教育本科国家级规划教材》还强调一些相关的理论知识,如形式语言和自动机理论、语法制导的定义和属性文法、类型论和类型系统等。《编译原理(第3版)/“十二五”普通高等教育本科国家级规划教材》内容丰富、讲解深入,注意理论联系实际,可作为高等学校计算机科学及相关专业的教材,也可供计算机软件工程技术人员参考。

编译原理-(第3版) 本书特色

《编译原理(第3版)/“十二五”普通高等教育本科国家规划教材》特色:内容全面、强调主线。包括词法分析、语法分析、语法制导的翻译、静态语义分析、运行时存储空间的组织和管理、中间代码生成、目标代码生成、代码优化、编译系统与运行系统、面向对象语言编译技术和函数式语言编译技术等,并以编译的各个逻辑阶段为主线?重视理论和形式方法。在围绕主线的同时,将相关理论和形式化技术的介绍穿插其中,有助于学生较快地领会和掌握;内容难易有别,难度较大的内容作为可选部分放在每章的*后,以拓宽教材的适用面。习题联系实际。本教材的很多例题和习题是从实际碰到的问题中抽象或抽取出来的:它们联系编程、编译、运行的实际,能激发学生学习本课程的兴趣。

编译原理-(第3版) 目录

第1章 引论1.1 编译器概述1.1.1 词法分析1.1.2 语法分析1.1.3 语义分析1.1.4 中间代码生成1.1.5 代码优化1.1.6 代码生成1.1.7 符号表管理1.1.8 阶段的分组1.1.9 解释器1.2 编译器技术的应用1.2.1 高级语言的实现1.2.2 针对计算机体系结构的优化1.2.3 新计算机体系结构的设计1.2.4 程序翻译1.2.5 提高软件开发效率的工具习题1第2章 词法分析2.1 词法记号及属性2.1.1 词法记号、模式、词法单元2.1.2 词法记号的属性2.1.3 词法错误2.2 词法记号的描述与识别2.2.1 串和语言2.2.2 正规式2.2.3 正规定义2.2.4 状态转换图2.3 有限自动机2.3.1 不确定的有限自动机2.3.2 确定的有限自动机2.3.3 NFA到DFA的变换2.3.4 DFA的化简2.4 从正规式到有限自动机2.5 词法分析器的生成器习题2第3章 语法分析3.1 上下文无关文法3.1.1 上下文无关文法的定义3.1.2 推导3.1.3 分析树3.1.4 二义性3.2 语言和文法3.2.1 正规式和上下文无关文法的比较3.2.2 分离词法分析器的理由3.2.3 验证文法产生的语言3.2.4 适当的表达式文法3.2.5 消除二义性3.2.6 消除左递归3.2.7 提左因子3.2.8 非上下文无关的语言构造3.2.9 形式语言鸟瞰3.3 自上而下分析3.3.1 自上而下分析的一般方法3.3.2 LL(1)文法3.3.3 递归下降的预测分析3.3.4 非递归的预测分析3.3.5 构造预测分析表3.3.6 预测分析的错误恢复3.4 自下而上分析3.4.1 归约3.4.2 句柄3.4.3 用栈实现移进一归约分析3.4.4 移进一归约分析的冲突3.5 LR分析器3.5.1 LR分析算法3.5.2 LR文法和LR分析方法的特点3.5.3 构造SLR分析表3.5.4 构造规范的LR分析表3.5.5 构造LALR分析表3.5.6 非二义且非LR的上下文无关文法3.6 二义文法的应用3.6.1 使用算符的优先级和结合性来解决冲突3.6.2 使用其他约定来解决冲突3.6.3 LR分析的错误恢复3.7 语法分析器的生成器3.7.1 分析器的生成器Yacc3.7.2 用Yacc处理二义文法3.7.3 Yace的错误恢复习题3第4章 语法制导的翻译4.1 语法制导的定义4.1.1 语法制导定义的形式4.1.2 综合属性4.1.3 继承属性4.1.4 属性依赖图4.1.5 属性计算次序4.2 S属性定义的自下而上计算4.2.1 语法树4.2.2 构造语法树的语法制导定义4.2.3 S属性的自下而上计算4.3 L属性定义的自上而下计算4.3.1 L属性定义4.3.2 翻译方案4.3.3 预测翻译器的设计4.3.4 用综合属性代替继承属性4.4 L属性的自下而上计算4.4.1 删除翻译方案中嵌入的动作4.4.2 分析栈上的继承属性4.4.3 模拟继承属性的计算习题4第5章 类型检查5.1 类型在编程语言中的作用5.1.1 执行错误和安全语言5.1.2 类型化语言和类型系统5.1.3 类型化语言的优点5.2 类型系统的描述语言5.2.1 定型断言5.2.2 定型规则5.2.3 类型检查和类型推断5.3 一个简单类型检查器的规范5.3.1 一个简单的语言5.3.2 类型系统5.3.3 类型检查5.3.4 类型转换5.4 多态函数5.4.1 为什么要使用多态函数5.4.2 类型变量5.4.3 一个含多态函数的语言5.4.4 代换、实例与合5.4.5 多态函数的类型检查5.5 类型表达式的等价5.5.1 类型表达式的结构等价5.5.2 类型表达式的名字等价……第6章 运行时存储空间的组织和管理第7章 中间代码生成第8章 代码生成第9章 独立于机器的优化第10章 依赖于机器的优化第11章 编译系统和运行时系统第12章 面向对象语言的编译第13章 函数式语言的编译

编译原理-(第3版) 作者简介

陈意云,1946年生,教授,博士生导师。1980年毕业于中国科学技术大学,1982年12月在上海华东计算技术研究所获硕士学位。1983年到中国科学技术大学计算机系工作,1989年到美国芝加哥大学访问两年。长期从事程序设计语言理论和实现技术、程序验证、软件安全等方面的研究工作,主持了7项与这些方向有关的国家自然科学基金项目。长期从事“编译原理”和“程序设计语言理论”等课程的教学工作,2007年获安徽省教学名师奖。本书两位作者在编译原理课程系列教材建设方面的工作获2005年安徽省高等教育省级教学成果三等奖。张昱,1972年生,副教授。1996年毕业于合肥工业大学,获硕士学位;2004年12月毕业于中国科学技术大学,获博士学位。主要从事“数据结构”、“缡译原理”、“程序设计语言理论”等课程的教学工作。主要研究方向是:程序设计语言理论和实现技术,特别是面向新型系统结构的并行语言设计和编译、并行程序分析和验证,即时编译器辅助的垃圾收集技术。

相关推荐

微信二维码