鱼C论坛

 找回密码
 立即注册
查看: 2244|回复: 1

实验十二的问题

[复制链接]
发表于 2012-2-29 19:34:15 | 显示全部楼层 |阅读模式

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

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

x
红色字体是我没有写的代码,,为什么还能正常运行啊,求解释,

实验12 编写0号中断的处理程序(第240页)  

-------------------------------------  

完整程序如下:  

assume cs:code  

   

code segment  

start:  

        mov ax,cs  

        mov ds,ax  

        mov si,offset do0                  ;设置ds:si指向源地址  

        mov ax,0  

        mov es,ax  

        mov di,200h                        ;设置es:di指向源地址  

        mov cx,offset do0end - offset do0  ;设置cx为传输长度  

        cld                                ;设置传输方向为正  

        rep movsb  

   

        ;mov ax,0  

        ;mov es,ax                                                           ;这里我没有写

        mov word ptr es:[0*4],200h       ;设置中断向量的入口地址的偏移地址  

        mov word ptr es:[0*4+2],0        ;设置中断向量的入口地址的段地址  

         

        mov ax,0f000h  

        mov dx,22d  

        mov cx,10d  

        div cx                           ;此4句是为了做个溢出的除法  

   

        mov ax,4c00h  

        int 21h  

         

   

do0:    jmp short do0start  

        db "divide error!"  

do0start:         

        mov ax,cs  

        mov ds,ax  

        mov si,202h                      ;设置ds:si指向字符串  

        mov ax,0B800h  

        mov es,ax  

        mov di,12*0A0h+2*32              ;设置es:di指向显存空间的中间位置  

   

        mov cx,13d                       ;设置字符串长度  

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  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-3-1 11:34:02 | 显示全部楼层
es之前已经定义过了的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-11-19 20:46

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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