第一章编译原理基础.pptVIP

  • 19
  • 0
  • 约6.78千字
  • 约 74页
  • 2017-06-20 发布于北京
  • 举报
编译阶段的组合 前端、后端 分析、综合 遍 前端和后端 前端包括编译逻辑结构中的分析部分,即词法分析、语法分析、语义分析和中间代码生成,除此还包括符号表建造及相应分析中的错误处理以及与机器无关的优化部分。 后端包括与目标机有关的部分,即综合部分,它包括目标代码生成及生成期间对符号表的相应检索操作和错误处理操作,以及与机器相关的代码优化部分。 将编译系统划分为前后端,有利于移植编译系统和利用后端为同一目标机配置不同语言的编译系统。 编译阶段的两大步骤∶分析和综合 分析步骤是指对源程序的分析  -线性分析(词法分析或扫描)  -层次分析(语法分析)  -语义分析 综合步骤是指后端的工作,为目标程序的生成而进行的综合 遍(pass) 对源程序(或其中间形式)从头至尾扫描一次并进行有关加工处理,生成新的中间形式或最终目标程序,称为一遍。 注:遍与阶段的含义毫无关系 多遍扫描 优点:节省内存空间,提高目标代码质量,使编译的逻辑结构清晰 缺点:编译时间较长 注:在内存许可情况下,还是遍数尽可能少些 一遍扫描(以语法分析为中心) 分遍原则∶ ①目标质量高低(高则多遍) ②机器内存大小(小则多遍) ③源语言简繁(繁则多遍) ④设计人员多少(多则多遍) 编译程序生成 直接用机器语言编写编译程序 用汇编语言编写编译程序 注:编译程序核心部分常用汇编语言编写 源程序 目标程序 编译程序 汇编

文档评论(0)

1亿VIP精品文档

相关文档