1.中断处理程序及其结构

2.除法错误中断

3.思路

4.程序框架

5.步骤
(1)安装程序的实现

(2)子程序的实现、设置中断向量表

(3)小结

6.代码
assume cs:codesg
codesg segment
main:
;do0安装程序
mov ax,cs
mov ds,ax
mov si,offset do0 ;源程序代码和数据
mov ax,0
mov es,ax
mov di,200h ;目标位置0:200h
cld ;将方向标志位DF清零,si和di都会递增
mov cx,offset do0end - offset do0 ;偏移地址之差,表示这段代码包含的字节总数,作为循环次数
rep movsb
;设置中断向量表
mov word ptr es:[0*4],200h ;中断类型码为0的ip
mov word ptr es:[0*4+2],0 ;中断类型码为0的cs
;中断处理子程序:显示字符串"overflow!"
do0:jmp short do0start
db "overflow!"
do0start:
mov ax,cs ;在前面cs已经设置为0
mov ds,ax
mov si,202h ;源数据的位置。因为jmp指令占两个字节的数据
mov ax,0b800h
mov es,ax
mov di,12*160+80 ;目标位置:显示器中央
mov cx,9
s:mov al,ds:[si]
mov byte ptr es:[di],al
inc si
add di,2
loop s
mov ax,4c00h
int 21h
do0end:nop ;nop No Operation 无操作的空指令,占位
codesg ends
end main
7.测试
