TangLMalan 2015-06-16 14:07 采纳率: 0%
浏览 2761

关于汇编语言中断程序的问题

中断错误实例,中断类型码是0,也就是div溢出,根据书本的课后的习题,我做了之后,
来测试,发现,在发生div溢出的时候,为什么打在屏幕上的字符居然出现在第一个命令执行后的ax中,这是怎么搞的。第一幅图片是正常显示,默认是divide flow,第二幅图片是我自定义,但是提示信息却不在下面,而是在中间,下面的代码是第二幅图的自定义代码,第三幅图中断程序返回来的信息为什么覆盖在了第一个-t后的ax中呢?
![![图片说明
图片说明

图片说明

assume cs:code
code segment
start:  mov ax,cs
        mov ds,ax
        mov si,do0

        mov ax,0
        mov es,ax
        mov di,200h

        mov cx,offset do0end-offset do0

        cld
        rep movsb

        mov ax,0
        mov es,ax
        mov word ptr es:[0],200h
        mov word ptr es:[2],0

        mov ax,4c00h
        int 21h

do0:    jmp short do0start
        db "Helloyouarer!"

do0start:       mov ax,cs
                mov ds,ax
                mov si,202h

                mov ax,0b800h
                mov es,ax
                mov di,12*160+36*2

                mov cx,13
s:              mov al,[si]
                mov es:[di],al

                inc si
                add di,2

                loop s

                mov ax,4c00h
                int 21h
do0end:nop
code ends
end start


  • 写回答

1条回答

  • devmiao 2015-06-16 14:42
    关注

    推荐你不要用debug,用ollydbg或者用turbo debug(dos程序),这样可以单步执行直接观察很方便的。

    评论

报告相同问题?

悬赏问题

  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!
  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?