📄 8253-1.asm
字号:
;定时器8253的例子:利用BIOS调用INT1AH/00H取得计时单位(55MS),在屏幕上每个;以5秒间隔从1到8显示
DATA SEGMENT
SED DB '0'
DATA ENDS
STACK SEGMENT STACK
DW 64 DUP(0)
STACK ENDS
CODE SEGMENT
ASSUME CS:CODE,SS:STACK,DS:DATA
START: MOV AX,DATA
MOV DS,AX
GOT: MOV AH,00H
INT 1AH ;BIOS调用,取计时单位(55ms),在DX
ADD DX,91 ;5s/55ms=5000ms/55ms=91
MOV BX,DX
LOP: MOV AH,00H
INT 1AH
CMP DX,BX
JNZ LOP
MOV DL,SED
MOV AH,02H ;DOS调用,显示一个字符
INT 21H
INC SED
CMP SED,'9'
JNZ GOT
MOV SED,'0'
MOV AH,4CH
INT 21H
CODE ENDS
END START
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -