assume cs:code
stack segment
db 128 dup(0)
stack ends
code segment
start:mov ax,stack
mov ss,ax
mov sp,128
mov ax,cs
mov ds,ax
mov ax,0
mov es,ax
mov si,offset int9
mov di,204h
mov cx, offset int9end-offset int9
cld
rep movsb
;
push es:[9*4]
pop es:[200h]
push es:[9*4+2]
pop es:[202h]
;设中断向量表
cli
mov word ptr es:[9*4], 204h
mov word ptr es:[9*4+2],0
sti
mov ax,4c00h
int 21h
;改变色彩代码
int9:
push ax
push bx
push cx
push es
in al,60h
pushf
call dword ptr cs:[200h]
cmp al,1EH+80h
jne int9e
mov ax,0b800h
mov es,ax
mov bx,0
mov cx,4000
s1:
mov byte ptr es:[bx ],'A'
add bx,2
loop s1
int9e: 0pop es
pop cx
pop bx
pop ax
iret
int9end:
nop
code ends
end start
- [游客] 好! 07/18 08:52
- [xiaomk7758] 顶 07/17 12:52
- [black] en 要是存储的是绝对地址呢? 想过没 05/11 13:51
- [游客] ESC 05/08 13:44
- [black] 恩,挺好,继续学习 05/08 09:10
- [black] 不错 05/07 19:01
- [ppt] 在实现功能的前提下精简一下程序. 04/28 20:49
- [240420643] 看看我的,用到了循环和jcxz http://www.asmedu.net/blog/user/p 04/27 18:22
- [starrynight] 结果怎么保证正确,有进位怎么办 ---------------------------- 如果 04/26 23:27
- [yigeling] 写的不错 04/26 23:26