转移地址在内存中的call指令
在10.6中,例题:mov sp,10h
mov ax,0123h
mov ds:,ax
mov word ptr ds:,0
call dword ptr ds:
书中说:执行后,(CS)=0,(IP)=0123H,(SP)=0CH
这说明转移地址为内存单元地址时,转移的目的地址是内存单元中的内容,即(ds:)=0123h,(ds:)=0
可是在检测点10.5中,
assume cs:codestack segment dw 8 dup (0)stack endscode segmentstart: mov ax,stack mov ss,ax mov sp,16 mov ds,ax mov ax,0 call word ptr ds: inc ax inc ax inc ax mov ax,4c00h int 21hcode endsend start call word ptr ds:,根据答案的意思,应该是转移的目的地址直接就是call后所显示的内存地址。这样就很矛盾了啊,谁能给解释哈? 原来已经有人问过这个问题了,在他们的帮助下弄明白了,以后发帖得先搜搜以解决 无回帖,不论坛,这才是人道。
页:
[1]