鱼C论坛

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

第五章实验4

[复制链接]
发表于 2016-7-26 18:11:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
assume cs:code 

code segment

        mov ax,0
        mov ds,ax
        mov bx,0
        mov cx,3fh
      s:mov [bx],bx
        inc bx
        loop s
        mov ax,4c00h
        int 21h

code ends
end

代码如上用debug执行出现问题到bx=3是执行不下去
捕获.PNG
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-7-28 10:46:19 | 显示全部楼层
       第一:你的目标地址写错了 不是 0:0 ,应该是 0:200,0:0 的位置是写中断的跳转地址的。

       第二:为什么到bx等于3就执行不下去了呢,那是因为你的目标地址越界了,目标地址是有4个字节构成,你前两个字节填写的是0 1,这是目标地址的偏移地址,等你在写第三个字节,那是短地址的高位,你在那里边写了 2 那么你的 总地址最低就是 200:01 也就是 20001 ,中断机制 的目标地址 没有这么大 所以 就会出错喽 !!!!
   
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-7-28 18:38:45 | 显示全部楼层
1366627538 发表于 2016-7-28 10:46
第一:你的目标地址写错了 不是 0:0 ,应该是 0:200,0:0 的位置是写中断的跳转地址的。

        ...

嗯,地址是写错了
改过来也可以了
assume cs:code 


code segment


        mov ax,20
        mov ds,ax

        mov bx,0

        mov cx,3fh

      s:mov [bx],bx

        inc bx

        loop s

        mov ax,4c00h

        int 21h


code ends

end

但是第二点不是很懂,
但是bx等于3时执行不下去还不是很明白
还没有学到中断机制,
目前在第八章!!
谢谢大神啦!!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-26 02:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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