当前位置:主页 > 课后答案 > 编译原理习题答案
编译原理及实现

《编译原理及实现》课后习题答案

  • 更新:2021-07-26
  • 大小:2.85 MB
  • 类别:编译原理
  • 作者:孙悦红
  • 出版:清华大学出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

本书以通俗易懂的语言介绍编译原理的理论和常用的方法与技术,并着重介绍各种编译方法的实现途径。全书共分10章,包括形式语言基础、词法分析、语法分析、语义分析及代码生成、符号表管理、运行时的存储分配,以及代码优化等。考虑目前学计算机专业的学生对C语言比较了解,本书中以C语言为雏形设计了一种TEST语言,并在介绍全书内容时,都用TEST语言进行分析与实现,使编译原理的抽象性通过TEST语言编译器的实现而具体化,从而使读者轻松掌握编译原理。

本书理论与实践并重,内容深入浅出,便于自学。每章后都提供了适量的习题。

目录

  • 第1章编译概述
  • 1.1程序设计语言
  • 1.2翻译程序
  • 1.3编译程序的组成
  • 1.3.1词法分析
  • 1.3.2语法分析
  • 1.3.3语义分析及中间代码生成
  • 1.3.4代码优化
  • 1.3.5目标代码生成
  • 1.3.6符号表管理
  • 1.3.7错误处理
  • 1.4编译程序的结构
  • 1.4.1单遍编译程序
  • 1.4.2多遍编译程序
  • 1.4.3编译程序分遍的优缺点
  • 1.4.4“端”的概念
  • 1.5编译程序的前后处理器
  • 1.5.1预处理器
  • 1.5.2汇编程序
  • 1.5.3连接加载程序
  • 1.6TEST语言与编译器
  • 1.6.1TEST语言
  • 1.6.2TEST编译器
  • 1.6.3TEST机
  • 习题
  • 第2章文法和语言
  • 2.1字母表和符号串
  • 2.1.1字母表
  • 2.1.2符号串
  • 2.1.3符号串及其集合的运算
  • 2.2文法
  • 2.2.1文法形式定义
  • 2.2.2文法的EBNF表示
  • 2.3推导
  • 2.3.1直接推导定义
  • 2.3.2推导定义
  • 2.3.3规范推导
  • 2.4句型和句子
  • 2.5语言
  • 2.6递归规则与递归文法
  • 2.6.1递归规则
  • 2.6.2递归文法
  • 2.7短语、简单短语和句柄
  • 2.8语法树
  • 2.9子树与短语
  • 2.10由树构造推导过程
  • 2.11文法的二义性
  • 2.12有关文法的实用限制
  • 2.13文法和语言分类
  • 习题
  • 第3章词法分析
  • 3.1词法分析的功能
  • 3.2程序语言的单词符号种类及词法分析输出
  • 3.3正则文法及状态图
  • 3.3.1状态图
  • 3.3.2状态图的用法
  • 3.4词法分析程序的设计与实现
  • 3.4.1TEST语言的词法规则及状态图
  • 3.4.2TEST语言词法分析程序的构造
  • 3.4.3TEST语言的词法分析程序实现
  • 3.5正则表达式
  • 3.5.1正则表达式定义
  • 3.5.2正则文法到正则表达式的转换
  • 3.6有穷自动机
  • 3.6.1确定的有穷自动机
  • 3.6.2不确定的有穷自动机
  • 3.6.3NFA到DFA的转化
  • 3.6.4正则表达式与有穷自动机的等价性
  • 3.6.5确定的有穷自动机的化简
  • 3.6.6根据DFA构造词法分析程序
  • 3.7词法分析程序的自动生成器LEX
  • 3.7.1用LEX语言表达正则表达式
  • 3.7.2LEX源程序结构
  • 3.7.3使用LEX生成TEST语言的词法分析程序
  • 习题
  • 第4章语法分析——自顶向下分析
  • 4.1自顶向下分析方法
  • 4.2FIRST集合和FOLLOW集合
  • 4.2.1FIRST集合定义及构造方法
  • 4.2.2FOLLOW集合定义及构造方法
  • 4.3递归下降分析
  • 4.3.1递归下降分析的基本方法
  • 4.3.2递归下降分析中存在的问题及解决方法
  • 4.3.3TEST语言的递归下降分析实现
  • 4.4LL(1)分析方法
  • 4.4.1LL(1)分析的基本方法
  • 4.4.2LL(1)分析表的构造方法
  • 4.4.3LL(1)分析的主要问题及解决方法
  • 习题
  • 第5章语法分析——自底向上分析
  • 5.1规范推导、规范句型和规范归约
  • 5.2自底向上分析方法的一般过程
  • 5.3LR分析方法
  • 5.3.1LR分析器逻辑结构
  • 5.3.2LR分析表构成
  • 5.3.3LR分析过程
  • 5.4LR(0)分析器
  • 5.4.1活前缀和可归前缀
  • 5.4.2LR(0)项目
  • 5.4.3构造识别活前缀的有穷自动机
  • 5.4.4LR(0)分析表的构造
  • 5.4.5LR(0)分析器的工作过程
  • 5.4.6LR(0)文法
  • 5.5SLR(1)分析器
  • 5.5.1SLR解决方法的基本思想
  • 5.5.2SLR(1)分析表的构造
  • 5.6LR(1)分析器
  • 5.6.1LR(1)项目
  • 5.6.2LR(1)项目集规范族构造算法
  • 5.6.3LR(1)分析表的构造
  • 5.7LALR(1)分析器
  • 5.8语法分析程序的自动生成工具——YACC
  • 5.8.1YACC源程序结构
  • 5.8.2YACC源程序说明部分的组成
  • 5.8.3YACC源程序的语法规则部分的组成
  • 5.8.4YACC源程序的程序部分组成
  • 5.8.5二义性文法的处理
  • 5.8.6YACC示例运行
  • 习题
  • 第6章语法制导翻译技术
  • 6.1翻译文法
  • 6.2语法制导翻译
  • 6.3自顶向下语法制导翻译
  • 6.3.1递归下降翻译
  • 6.3.2LL(1)翻译器
  • 6.4属性翻译文法
  • 6.4.1综合属性
  • 6.4.2继承属性
  • 6.4.3属性翻译文法定义
  • 6.4.4属性翻译文法举例——算术表达式的翻译
  • 6.5属性文法的自顶向下翻译
  • 6.5.1L-属性翻译文法
  • 6.5.2L-属性翻译文法的翻译实现——递归下降翻译
  • 6.5.3L-属性翻译文法的翻译实现——LL(1)法
  • 6.6自底向上语法制导翻译
  • 6.6.1波兰翻译
  • 6.6.2S-属性文法
  • 6.6.3S-属性波兰翻译文法的翻译实现
  • 习题
  • 第8章程序运行时的存储组织及管理
  • 第9章语义分析和代码生成
  • 0章代码优化
  • 附录ATEST语言文法规则
  • A1TEST语言词法规则
  • A2TEST的语法规则
  • A3TEST的语义和代码生成规则
  • 附录B词法分析程序
  • 附录C语法分析程序
  • 附录D语义及代码生成程序
  • 附录ETEST抽象机模拟器完整程序
  • 参考文献

资源下载

资源下载地址1:https://pan.baidu.com/s/12GIRLrgxxg6Wq3Zwhrikjw

相关资源

网友留言