📄 4.asm
字号:
DATA SEGMENT
TABLE DW 0101H,0102H,0104H,0108H,0110H,0120H,0140H,0180H
DW 0201H,0202H,0204H,0208H,0210H,0220H,0240H,0280H
DW 0401H,0402H,0404H,0408H,0410H,0420H,0440H,0480H
CHAR DB'CDEFBA9845673210WXYSFPMG'
MESS DB'Press a key on the small keyboard!',0AH,0DH
DB'It will display on the screen!',0AH,0DH
DB'Press R key,return to DOS!',0AH,0DH,'$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV DX,OFFSET MESS
MOV AH,09
INT 21H
Q1: MOV AL,82H
MOV DX,21BH;
OUT DX,AL
Q2: MOV AL,00
MOV DX,218H
OUT DX,AL
MOV DX,219H
IN AL,DX
AND AL,0FFH
CMP AL,0FFH
JZ Q2
MOV BL,AL
MOV CX,2
BB:CALL DELAY
LOOP BB
MOV DX,21BH
MOV AL,90H
OUT DX,AL
MOV DX,219H
MOV AL,BL
OUT DX,AL
MOV DX,218H
IN AL,DX
AND AL,0FFH
MOV AH,BL
NOT AX
MOV SI,OFFSET TABLE
MOV DI,OFFSET CHAR
MOV CX,24
Q4: CMP AX,[SI]
JZ Q5
ADD SI,02
INC DI
LOOP Q4
JMP Q1
Q5: MOV DL,[DI]
CMP DL,'0'
JZ Q6
MOV AH,02H
INT 21H
JMP Q1
Q6: MOV AX,4C00H
INT 21H
DELAY PROC
PUSH CX
MOV AH,86H
MOV CX,0
MOV DX,20000
INT 15H
POP CX
RET
DELAY ENDP
CODE ENDS
END START
;线路:
;8255.CS ------------ 218-21F
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -