谁能解释一下这段程序
code segment
assume cs:code,ds:code
org 100h
start:
jmp install
int9:
push ax
push dx
mov dx,378h
in al,60h
test al,80h
jz zheng
mov al,0
out dx,al
jmp done
zheng:
mov al,4
out dx,al
done:
pop dx
pop ax
db 0eah
old9 dw 0,0 ; 相当于jmp原中断程序
install:
mov ax,3509h
int 21h
mov cs:old9,bx
mov cs:old9+2,es
push ds
mov ax,seg int9
mov ds,ax
mov dx,offset int9
mov ax,2509h
int 21h
pop ds
mov dx,(offset install)+15
mov cl,4
shr dx,cl
mov ax,cs
mov cx,ds
sub ax,cx
add dx,ax
mov ax,3100h
int 21h
code ends
end start
为什么 old9 dw 0,0 相当于jmp原中断程序?