三地址语句 四元式 口一个带有四个域的记录结构,这四个域分别 称为op,arg1,arg2及result op arg1 arg2 result (0) uminus C Ti (1) b T T2 (2) uminus c T3 (3) b T3 (4) + T2 T4 Ts (5) Ts a 国防科技大学计算机系602教研室
国防科技大学计算机系602教研室 三地址语句 ◼ 四元式 一个带有四个域的记录结构,这四个域分别 称为op, arg1, arg2及result op arg1 arg2 result (0) uminus c T1 (1) * b T1 T2 (2) uminus c T3 (3) * b T3 T4 (4) + T2 T4 T5 (5) := T5 a
三地址语句 三元式 口通过计算临时变量值的语句的位置来引用这 个临时变量 口三个域:op、arg1和arg2 op arg1 arg2 ( uminus C 1) b (0) (2 uminus C 345 b (2) + (1) (3) assign a (4) 国防科技大学计算机系602教研室
国防科技大学计算机系602教研室 三地址语句 ◼ 三元式 通过计算临时变量值的语句的位置来引用这 个临时变量 三个域:op、arg1和arg2 op arg1 arg2 (0) uminus c (1) * b (0) (2) uminus c (3) * b (2) (4) + (1) (3) (5) assign a (4)
三地址语句 X[叮y op arg1 arg2 (0) []= X i (1) y ■X: =y[i] op arg1 arg2 (0) =[] y i (1) assign X (0) 国防科技大学计算机系602教研室
国防科技大学计算机系602教研室 三地址语句 ◼ x[i]:=y op arg1 arg2 (0) [ ] = x i (1) y ◼ x:=y[i] op arg1 arg2 (0) = [ ] y i (1) assign x (0)
三地址语句 ■间接三元式 口为了便于优化,用三元式表+间接码表表示 中间代码 口间接码表:一张指示器表,按运算的先后次 序列出有关三元式在三元式表中的位置。 口优点:方便优化,节省空间 国防科技大学计算机系602教研室
国防科技大学计算机系602教研室 三地址语句 ◼ 间接三元式 为了便于优化,用 三元式表+间接码表 表示 中间代码 间接码表:一张指示器表,按运算的先后次 序列出有关三元式在三元式表中的位置。 优点: 方便优化,节省空间
■ 例如,语句 X:=(A+B)*C; Y:=D↑(A+B) 的间接三元式表示如下表所示。 间接代码 三元式表 (1) OP ARGI ARG2 (2) (1) + A B (3) (2) (1) C (1) (3) = X (2) (4) (4) ↑ D (1) (⑤) (5) Y (4) 国防科技大学计算机系602教研室
国防科技大学计算机系602教研室 ◼ 例如,语句 X:=(A+B)*C; Y:=D↑(A+B) 的间接三元式表示如下表所示。 间接代码 (1) (2) (3) (1) (4) (5) 三元式表 OP ARG1 ARG2 (1) + A B (2) * (1) C (3) := X (2) (4) ↑ D (1) (5) := Y (4)