MOV 到变量指针
MOV to variable pointer
我在 0x7c02 声明了单词:
ramSpace: dw 0x500
是否可以直接在which ramSpace指向的地址处改变内存?目前要更改 0x500 处的内存,我必须:
MOV BX, [ramSpace]
MOV [BX], BYTE 01
或:
MOV [0x500], BYTE 01
但是输入:
MOV [ramSpace], BYTE 01
将 0x7c02 值从 0x500 更改为 01。有没有办法从内存中的变量指向 0x500?像这样:
MOV [[ramSpace]], BYTE 01
不,x86 没有任何指令可以从内存中加载一个字并将其用作访问另一个 word/byte 内存的地址。您必须使用中间寄存器来执行此操作。
我在 0x7c02 声明了单词:
ramSpace: dw 0x500
是否可以直接在which ramSpace指向的地址处改变内存?目前要更改 0x500 处的内存,我必须:
MOV BX, [ramSpace]
MOV [BX], BYTE 01
或:
MOV [0x500], BYTE 01
但是输入:
MOV [ramSpace], BYTE 01
将 0x7c02 值从 0x500 更改为 01。有没有办法从内存中的变量指向 0x500?像这样:
MOV [[ramSpace]], BYTE 01
不,x86 没有任何指令可以从内存中加载一个字并将其用作访问另一个 word/byte 内存的地址。您必须使用中间寄存器来执行此操作。