三地址语句的具体实现
三地址代码是由下面一般形式的语句构成的序列:
- x:=y op z
其中, x、y、z为名字、常数或编译时产生的临时变量;op代表运算符号。
每个语句的右边只能有一个运算符。(有重复的)
三元式
三元式主要由三部分组成:(有重复的)
- (OP,arg1,arg2)
间接三元式
为了便于优化处理,作为中间代码,设一张指示器表(间接码表)
(没有重复的)????????
四元式
四元式主要由四部分组成:(有重复的)
- (OP,arg1,arg2,result)
其中,OP是运算符,argl、arg2分别是第一和第二个运算对象,result是编译程序为存放中间运算结果而引进的变量,常称为临时变量。当OP是一目运算时,常常将运算对象定义为arg1。
注意:最后一行
- 四元式出现的顺序和语法成份的计值顺序相一致。
- 四元式之间的联系是通过临时变量实现的,这样易于调整和变动四元式。
- 便于优化处理。