目录 上一页 下一页 附录A

-296- PC机汇编语言实战精解



























f11:





f12:




exit:


mov
mov
mov

in
push

in
or
out
and
out

mov
out

pop
test
jnz

mov
cmp
jz
cmp
jz
jmp

inc
mov
stosb
loop
jmp

inc
mov
stosb
loop

pop
pop
ax,0b800h
es,ax
di,0

al,60h
ax

al,61h
al,80h
61h,al
al,7fh
61h,al

al,20h
20h,al

ax
al,10000000b
exit

cx,2000
al,57h
f11
al,58h
f12
exit

di
al,2

f11
exit

di
al,4

f12

es
di
;令ES寄存器指向显示缓冲区

;DI寄存器指向显示缓冲区首

;从端口60H取得键盘发来的扫描码
;暂存扫描码

;通过61H端口给键盘发一个应答脉冲





;向中断控制器发EOI命令


;取回扫描码
;是通码吗?
;若不是通码,转EXIT退出中断服务程序

;准备改变显示缓存中字符的颜色
;是F11键的扫描码吗?
;是,转F11键的处理程序
;是F12键吗?
;是,转F12键的处理程序
;不是这两个键,转EXIT退出中断服务程序

;DI寄存器指向属性字节(奇数地址)
;选择黑底绿色字属性
;改变屏幕字符颜色
;转F11继续
;整屏字符颜色改变后,退出中断服务程序

;将整屏字符颜色改变为红色




;恢复寄存器


Copyright © 2004-2015 Reanimator www.cookmoon.org

目录 上一页 下一页 附录A