王爽汇编语言实验12

;************************************************
;编写程序,使得在除法溢出时,在屏幕中间显示字符串
;"divide error!"然后返回dos
;************************************************
assume cs:code,ss:stack
stack segment
  db 128 dup(0)
stack ends
code segment
start:
   mov ax,cs
   mov ds,ax
   mov si,offset do0                              ;源地址
  
   mov ax,0
   mov es,ax
   mov di,200h                                    ;目标地址
   mov cx,offset do0end-offset do0
   cld
   rep movsb                                      ;将中断处理程序放到内存中
  
   mov word ptr es:[0*4],200h
   mov word ptr es:[0*4+2],0                      ;设置中断向量表

   int 0                                                         ;调用零号中断试试
   do0:                                              ;显示中断处理程序
    jmp short do0start
    db "divide errors! "
do0start:
   mov ax,cs
   mov ds,ax
   mov si,202h
   mov ax,0b800h
   mov es,ax
   mov di,12*160+36*2                              ;计算dos中间位置
   mov cx,14
s: mov al,[si]
   mov es:[di],al
   inc si
   loop s

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

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值