?? 4.asm
字號:
PORT_A EQU 208H
PORT_B EQU 209H
PORT_C EQU 20AH
PORT_CW EQU 20BH
TRUE EQU 0FFH
FALSE EQU 0
EXIT_KEY EQU 10000000B ; K8
DATA SEGMENT
DISP_BUF DB 0
DISP_FLAG DB 0
EXIT_FLAG DB 0
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START: MOV AX,DATA
MOV DS,AX
MOV DX,PORT_CW
MOV AL,89H
OUT DX,AL
NEXT:
CALL KEY_INPUT
CALL KEY_TEST
CALL DISP
CMP EXIT_FLAG,TRUE
JNZ NEXT
MOV AH,4CH
INT 21H
KEY_TEST:
MOV AL,0
MOV DX,PORT_A
OUT DX,AL
MOV DISP_FLAG,FALSE
MOV DX,PORT_C
IN AL,DX
TEST AL,7FH
JZ KEY_TEST_LP1
MOV DISP_FLAG,TRUE
KEY_TEST_LP1: TEST AL,80H
JZ KEY_TEST_EXIT
MOV EXIT_FLAG,TRUE
KEY_TEST_EXIT: RET
KEY_INPUT:
MOV AH,7
INT 21H
MOV DISP_BUF,AL
KEY_INPUT_RET: RET
DISP:
CMP DISP_FLAG,TRUE
JNZ DISP_RET
MOV AH,2
MOV DL,DISP_BUF
INT 21H
MOV AL,DISP_BUF
MOV DX,PORT_A
OUT DX,AL
DISP_RET: RET
CODE ENDS
END START
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -