编译器的结构(1) 编译器可以分为分析部分和综合部分 分析(analysis))部分/前端(front end) 把源程序分解成组成要素,以及相应的语法结构 使用这个结构创建源程序的中间表示 同时收集和源程序相关的信息,存放到符号表 综合(synthesis))部分/后端(back end) 根据中间表示和符号表信息构造目标程序 ·前端部分是机器无关的,后端部分是机器相关的 8编译器的结构 (1) • 编译器可以分为分析部分和综合部分 • 分析 (analysis) 部分 / 前端 (front end) – 把源程序分解成组成要素,以及相应的语法结构 – 使用这个结构创建源程序的中间表示 – 同时收集和源程序相关的信息,存放到符号表 • 综合 (synthesis) 部分 / 后端 (back end) – 根据中间表示和符号表信息构造目标程序 • 前端部分是机器无关的,后端部分是机器相关的 8