自己动手构造编译系统:编译、汇编与链接2.1 编译程序的设计

第2章

  

编译系统设计

  

麻雀虽小,五脏俱全。


——《围城》

  

   一个完善的工业化编译系统是非常复杂的,为了清晰地描述它的结构,理解编译系统的基本流程,不得不对它进行“大刀阔斧”地删减。这为自


己动手实现一个简单但基本功能完整的编译系统提供了可能。虽然本书设计的是简化后的编译系统,但保留了编译系统的关键流程。正所


谓“麻雀虽小,五脏俱全”,本章从全局的角度描述了编译系统的基本结构,并按照编译、汇编和链接的流程来介绍其设计。


2.1  编译程序的设计

  

编译器是编译系统的核心,主要负责解析源程序的语义,生成目标机器代码。一般情况下,编译流程包含词法分析、语法分析、语义分析和代



生成四个阶段。符号表管理和错误处理贯穿于整个编译流程。如果编译器支持代码优化,那么还需要优化器模块。


  图2-1展示了本书设计的优化编译器的结构,下面分别对上述模块的实现方案做简单介绍。

 

图2-1  编译器结构

上一篇:oracle11g静默安装 db_install.rsp文件详解(转)


下一篇:python插入mysql新值