0

首先,我熟悉二进制补码系统如何表示负数的概念,并且我知道当有跳转指令(短或接近)时,它包含的偏移量将始终添加到 EIP 寄存器中并且没有从 EIP 寄存器中减去偏移量的情况(如果我是对的!)。但我想知道在以下两种带有负偏移量的寻址的情况下,它是否与如何使用跳转指令中的偏移量的情况相同,该偏移量总是被添加到基数而不是任何减去案子?

(以 GASM 格式):
“base_address(offset,index register,scale)”,例如:

%eax(-4,%ebx,1)

“偏移量(基址寄存器)”如:

-4(%eax)

将二进制数添加到 eax 寄存器还是减去?

4

1 回答 1

1

-4 将被添加到寄存器的值,减少 4。总是添加偏移量。

于 2011-01-20T21:31:50.300 回答