这可能是简单而愚蠢的,但我会问它,因为我似乎无法弄清楚。8086大会,关于PTR运营商
一个简单的代码片段:
assume cs:code, ds:data
data segment
b dd 256
data ends
code segment
start:
mov ax,data
mov ds,ax
mov ax,word ptr b -> the result of this operation will be ax:= 256 (100h)
mov bx,word ptr b+1 -> while this is going to be bx:= 1
我想这事做的地址,它是由一个字节或东西感动,但我不是很确定,我真的需要理解。
在此先感谢!
那么,你的问题是什么? – 2013-02-08 12:33:05
这与C – Ulterior 2013-02-08 12:33:44
中的指针解引用相同我很抱歉模糊不清。我的问题是为什么bx:= 1?由于b的内容是256,而b + 1是257?考虑到mov应该处理内容而不是地址。为什么mov bx,word ptr b + 1导致bx:= 1? – 2013-02-08 12:34:37