int9中断例程疑问
在int9中断例程中,int9h:
push ax
push bx
push es
in al,60h
pushf
pushf
pop bx
and bh,11111100b
push bx
popf
call dword ptr ds:;调用这个的目的是什么?
cmp al,1
jne int9ret
mov ax,0b800h
mov es,ax
inc byte ptr es:
int9ret:
pop es
pop bx
pop ax
iret为什么没有那一句,连基本的字母更替都做不到(我实验时程序直接返回了,屏幕留下的是a),我根本没有按任何按钮,理论不会触发int 9h才对啊。
补充内容 (2012-11-6 21:45):
忘了说了,以上只是中断例程部分,不是全部代码 {:5_96:}求解答 已经了解原因,,结帖 有同感,同样的问题想了好长时间, call dword ptr ds:调用了原int 9h中断,这样程序在运行的时候可以接收键盘其它指令,可为什么要放在新编中断的中间部位,而不是放在颜色显示后面……或者是程序中根本就不调用原int 9h???
页:
[1]