绪论-中间代码生成及编译

常用的中间表示形式

  • 三地址码(three-address Code)
    • 三地址码由类似于汇编的指令序列组成,每个指令最多有三个操作数
      绪论-中间代码生成及编译
    • 地址可以具有如下形式之一
      • 源程序中的名字
      • 常量
      • 编译器生成的临时变量
    • 三地址转换成数据结构
      • 四元式
        绪论-中间代码生成及编译

        - 三元式
      • 间接三元式
  • 语法结构树/语法树(syntax trees)

编译器的结构

  • 目标代码生成以源程序的中间表示形式作为输入,并把它映射到目标语言
  • 目标生成的一个重要任务是为程序中使用的变量合理分配寄存器

代码优化

代码优化:为改进代码进行的等价程序变换

  • 机器无关优化:中间层面进行优化
  • 机器相关优化:目标代码层面进行优化