📄 8253a.asm
字号:
IOPORT EQU 0C400H-0280H
IO8253A EQU IOPORT+283H
IO8253B EQU IOPORT+280H
CODE SEGMENT
ASSUME CS:CODE
START: MOV AL,10H ;设置8253通道0为工作方式2,二进制计数
MOV DX,IO8253A
OUT DX,AL
MOV DX,IO8253B ;送计数初值为05H
MOV AL,05H
OUT DX,AL
LLL: IN AL,DX ;读计数初值
CALL DISP ;调显示子程序
PUSH DX
MOV AH,06H
MOV DL,0FFH
INT 21H
POP DX
JZ LLL
MOV AH,4CH ;退出
INT 21H
DISP PROC NEAR ;显示子程序
PUSH DX
AND AL,0FH ;首先取低四位
MOV DL,AL
CMP DL,9 ;判断是否<=9
JLE NUM ;若是则为'0'-'9',ASCII码加30H
ADD DL,7 ;否则为'A'-'F',ASCII码加37H
NUM: ADD DL,30H
MOV AH,02H ;显示
INT 21H
MOV CX,9000
DE1: MOV DI,0FFF0H ;DI赋初值5000
DE0: DEC DI ;减1计数
JNZ DE0 ;DI不为0
LOOP DE1
MOV DL,0DH ;加回车符
INT 21H
MOV DL,0AH ;加换行符
INT 21H
POP DX
RET ;子程序返回
DISP ENDP
CODE ENDS
END START
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -