【发布时间】:2016-07-08 09:33:11
【问题描述】:
我想得到一些帮助,将这个表达式转换成 4 种方法的命令:
z=3*(x+2)-2*y
这是我尝试的方法:
按堆栈:
push 2
push -1
mult
push y
mult
push x
push 2
add
push 3
mult
add
pop z
按累加器:
load y
mult -2
store temp
load x
add 2
mult 3
add temp
store z
注册内存:
add R1, x, 2
mult R1, R1, 3
mult R2, y, -2
add z, R1, R2
注册-注册:
load R1, x
add R1, R1, 2
mult R1, R1, 3
load R2, y
mult R2, R2, -2
add R1, R1, R2
store z, R1
还好吗?我可以使用负数(-2...)吗?
谢谢!
【问题讨论】:
标签: cpu-registers x86-16 cpu-architecture processor