劫持键盘中断
本程序劫持9号中断,实现判断键盘输入修改屏幕颜色, R G B 键 分别修改 屏幕背景为红色 绿色 蓝色。
assume cs:code,ds:data,ss:stack
code segment
start:
mov ax,data
mov ds,ax
mov ax,stack
mov ss,ax
mov sp,16 ;set about segment
push ds
push cs
pop ds ;chenge ds is cs
mov si,offset install_start
mov ax,0
mov es,ax
mov di,200h
cld ;set transmission direction is plus
mov cx,offset install_end - offset install_start ;set copy byte size
rep movsb ;start copy
pop ds ;recover ds
mov ax,0
mov es,ax
push es:[36]
pop es:[202h]
push es:[38]
pop es:[204h] ;save interrupted address
mov word ptr es:[36],200h
mov word ptr es:[38],0 ;change interrupted address
mov ax,4c00h
int 21h
install_start:
jmp ok
db 'this is a test$' ; this save former 9interrupted address
ok:
push ds
push ax
push bx
push dx
push es
push cx ;save segment
in al,6

这篇博客介绍了如何通过汇编语言劫持9号中断,实现对键盘输入的响应,使得按下R、G、B键时屏幕背景分别变为红色、绿色和蓝色。
最低0.47元/天 解锁文章
3858

被折叠的 条评论
为什么被折叠?



