教材
编译技术 Goodreads
作者: 张莉,史晓华,杨海燕,金茂忠 高等教育出版社 2016 - 9
本书为“基于系统能力培养的计算机专业课程建设研究”项目规划教材,同时也是国家精品资源共享课程主讲教材。本书对传统编译技术课程内容进行了结构性改革,首先暂时抛开大量形式化方法,先给学生一个完整的编译过程,以及这个过程中涉及的编译技术,在该过程中同时介绍相关的理论和方法。对于编译过程中涉及的形式化方法、编译自动生成技术、编译优化技术等,则将其放在了一个完整的编译过程之后,作为必要的补充。全书共分三部分。其中,一部分基础篇(1~10章),包含编译技术概述、语言与文法基础、一个简单编译器的构造(一个完整的编译过程)。第二部分提高篇(11~16章),重点介绍编译程序的自动化生成技术和代码优化及面向目标机的代码生成技术。第三部分实例篇(17~18章),给出两个小型编译系统的完整设计。与教材配套的课程网站(易课程网、爱课程网)包括课程教学视频、电子教案、案例源代码等教学资源。本书可作为本科计算机类专业编译技术课程教材,也可供相关技术人员参考使用。前辅文第1部分基础篇第1章编译概述1.1什么是程序设计语言1.1.1程序设计语言的定义方法1.1.2程序设计语言的处理系统1.1.3编译程序和解释程序1.2与编译程序相关的处理系统1.3编译程序和程序设计环境1.4编译程序的构造1.5编译技术在软件工程中的应用练习1第2章文法和语言的概念和表示2.1文法的非形式讨论2.1.1语法树2.1.2规则2.1.3由规则推导句子练习2-12.2符号?符号串及其集合的运算2.2.1字母表和符号串2.2.2符号串及其集合的运算练习2-22.3文法和语言的形式定义2.3.1文法的形式定义2.3.2推导的形式定义2.3.3语言的形式定义2.3.4递归规则与递归文法2.3.5短语?简单短语和句柄练习2-32.4语法树和二义性2.4.1推导与语法树2.4.2文法的二义性练习2-42.5符号串的分析2.5.1自顶向下分析2.5.2自底向上分析2.6有关文法的实用限制练习2-52.7扩充的BNF表示和语法图2.7.1扩充的BNF表示2.7.2语法图2.8文法和语言分类第3章词法分析程序的设计3.1词法分析程序的功能及实现方案3.2单词的种类及词法分析程序的输出形式3.3正则文法及其状态图3.3.1状态图3.3.2状态图的使用3.4词法分析程序的设计与实现3.4.1文法及其状态图3.4.2词法分析程序的构造3.4.3词法分析程序的实现练习3第4章语法分析(一)4.1自顶向下分析方法4.1.1带回溯的自顶向下分析方法4.1.2存在的问题及解决办法练习4-14.2递归下降分析法4.3基于递归下降分析法的语法分析程序构造练习4-2第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.4分程序结构语言的符号表组织5.4.1标识符的作用域及基本处理方法5.4.2定位和重定位操作5.4.3符号表的组织方式练习5第6章运行时的存储组织及