关于键盘中断
我把中断向量表里的int 9h键盘中断的地址换用我自己的new_int代替
使敲击键盘时执行我的程序,下面是我用来代替原来int 9h的程序,
一旦敲击键盘便输出一个大写A,程序成功,可是我不知道为什么要测试键盘缓冲区是否为空
不测试的话就不能正确的输出A了!!!
new_int proc
sti
push ax
pushf
call dword ptr cs:save ;原来的int 9的地址
mov ah,1 ;为何要测试键盘缓冲区是否为空?
int 16h
jz exit ;如果空就跳出
cmp al,73h
jnz exit
mov ax,0e41h
int 10h
mov ah,0 ;清空键盘缓冲区
int 16h
exit:
pop ax
iret
new_int endp