ISHEEPI 发表于 2020-10-22 18:45:14

汇编 改变字体颜色RGB 比较简单的实现 但有一处不明白

本帖最后由 ISHEEPI 于 2020-10-22 18:52 编辑

assume cs:code

code segment
start:
s:       
        int 16h ;得到输入的字母 ah 扫描码 al ascll码
        mov ah,0 ; 有个问题为什么这里一定要有一句这个???????????????????????
        cmp al,72H ;将ascll码进行对比 跳转设置颜色
        je r
        cmp al,67H
        je g
        cmp al,62H
        je b
        cmp al,'e' ;按e 结束程序
        je e
        jmp s ;没一个对上跳回重新比对
r:             ;设置颜色
        mov bl,4
        jmp color
g:
        mov bl,2
        jmp color
b:
        mov bl,1
        jmp color
e:            ;结束程序
        mov ax,4c00h
        int 21h
color:         ;写入显存
        mov ax,0b800h
        mov es,ax
        mov di,1
        mov cx,2000
l:
        mov es:,bl
        add di,2
loop l
jmp s
code ends
end start


问题在上方问号处

wtchou 发表于 2020-10-22 19:43:46

int 16h 中断例程中包含多个子功能
使用mov ah, 0
表示调用int 16h 的0号功能
顺序如下:
mov ah, 0
int 16h

ISHEEPI 发表于 2020-10-22 20:39:54

wtchou 发表于 2020-10-22 19:43
int 16h 中断例程中包含多个子功能
使用mov ah, 0
表示调用int 16h 的0号功能


原来如此
谢谢谢谢
我可能走神了{:10_257:}
页: [1]
查看完整版本: 汇编 改变字体颜色RGB 比较简单的实现 但有一处不明白