鱼C论坛

 找回密码
 立即注册
查看: 2179|回复: 2

转移地址在内存中的call指令

[复制链接]
发表于 2013-5-31 21:06:48 | 显示全部楼层 |阅读模式
1鱼币
在10.6中,例题:
mov sp,10h
mov ax,0123h
mov ds:[0],ax
mov word ptr ds:[2],0
call dword ptr ds:[0]
书中说:执行后,(CS)=0,(IP)=0123H,(SP)=0CH
这说明转移地址为内存单元地址时,转移的目的地址是内存单元中的内容,即(ds:[0])=0123h,(ds:[2])=0

可是在检测点10.5中,
assume cs:code
stack segment
     dw 8 dup (0)
stack ends
code segment
start:   mov ax,stack
     mov ss,ax
     mov sp,16
     mov ds,ax
     mov ax,0
     call word ptr ds:[0eh]
     inc ax
     inc ax
     inc ax
     mov ax,4c00h
     int 21h
code ends
end start
call word ptr ds:[0eh],根据答案的意思,应该是转移的目的地址直接就是call后所显示的内存地址。
这样就很矛盾了啊,谁能给解释哈?

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-5-31 21:14:23 | 显示全部楼层
原来已经有人问过这个问题了,在他们的帮助下弄明白了,以后发帖得先搜搜以解决
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-6-1 06:24:23 | 显示全部楼层
无回帖,不论坛,这才是人道。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-12 16:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表