我想得到2种不同的东西:(1)(bp处的值)plus 16(数学加法)类似于:mov ax, [bp] + 16
(2)bp + 16的值(地址bp + 16)
为了得到((1)我尝试了:
mov ax, bp+16
但是它给出了一个错误。
对于(2)我尝试过:
mov ax, [bp+16]
哪个工作。 (我希望我做的正确)。
为什么汇编无法理解对以下内容的评估:
mov ax, bp+16
但可以理解:
mov ax, [bp+16]
因为未使用
+
符号定义加法,那么该幕后发生了什么?
我想得到2种不同的东西:(1)(bp的值)加16(数学加法)类似于:mov ax,[bp] + 16(2)bp + 16的值(地址bp +16)才能获得(1)I ...
没有mov
的形式可以进行数学运算以为目标寄存器生成不在源寄存器或内存操作数中的新值。 https://www.felixcloutier.com/x86/mov。您想要的AX值必须是立即数,或直接包含在某个地址的寄存器或内存中。