2、假设可用寄存器为RO和 R1,试对以下四元式序列G:(1)A=B*C(2)D=E+F(3)G=A+D(4)H=G*2其中,H是基本块出口的活跃变量,写出目标代码。
时间: 2024-03-25 22:35:37 浏览: 98
寄存器操作例程
目标代码如下:
```
LOAD B, RO ; 将 B 加载到寄存器 RO
MUL C, RO ; 将 C 乘以 RO 的值
STORE RO, A ; 将 RO 的值存储到 A 中
LOAD E, RO ; 将 E 加载到寄存器 RO
ADD F, RO ; 将 F 加上 RO 的值
STORE RO, D ; 将 RO 的值存储到 D 中
LOAD A, RO ; 将 A 加载到寄存器 RO
ADD D, RO ; 将 D 加上 RO 的值
STORE RO, G ; 将 RO 的值存储到 G 中
LOAD G, RO ; 将 G 加载到寄存器 RO
MUL 2, RO ; 将 RO 的值乘以 2
STORE RO, H ; 将 RO 的值存储到 H 中
```
其中,LOAD表示将某个变量加载到寄存器中,STORE表示将寄存器中的值存储到某个变量中,MUL表示乘法运算,ADD表示加法运算。
阅读全文