【发布时间】:2017-11-23 16:19:09
【问题描述】:
我目前正在按照 Kip Irvine 的“汇编语言 x86 编程”一书学习汇编编程。
我知道SDWORD 可用于将 32 位值分配给变量,例如
myVariable SDWORD -2147483648
; assign the minimum negative number -2147483648 that can be contained within a SDWORD
; to variable named myVariable
但在书中,作者也写了
DWORD 可用于声明包含 32 位 另一个变量的偏移量。下面,pVal 包含 val3 的偏移量:
pVal DWORD val3
我不确定这句话是什么意思?有人可以向我解释一下吗?尤其是作者32 bit offset of another variable是什么意思?
【问题讨论】:
-
另一个变量的地址。一个指针。你知道指针吗?
-
@Jester 啊,我想我明白了。所以我猜作者的意思是“DWORD 可用于声明包含另一个变量的 32 位地址的变量”。因此,对于“pVal DWORD val3”,我们并不是将“val3”中包含的值分配给“pVal”,而是将“val3”的地址分配给“pVal”。我希望我的理解是正确的。
-
是的,没错。从技术上讲,它是一个段中的偏移量,但在平面内存环境中,除特殊情况外,基数为零。
-
@Jester 真棒。再次感谢您的帮助!真的很感激!