6

假设 x 是一个其值未知的寄存器。我必须在x=2a+3b哪里a并且b有未知的价值。

我只能使用 8086 asm 指令mov, add, sub, neg。指令的使用mul是不允许的,也有4条指令的限制。

甚至可能吗?

4

1 回答 1

10

重写你的表达式:

2a + 3b = 2(a + b) + b = (a + b) + (a + b) + b

请注意,您只需要计算(a + b)一次的值。

于 2012-10-03T20:34:03.720 回答