📄 08b.asm
字号:
DATA SEGMENT
ioport equ 0c000h-280h ;实验箱驱动默认中断地址为C000H,此处设置偏移量
ioport1 equ ioport+280h
ioport2 equ ioport+281h
ioport3 equ ioport+283h
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START PROC FAR
STT:PUSH DS
SUB AX,AX
PUSH AX
;==============================
MOV AX,DATA
MOV DS,AX
FORMAT: MOV DX,ioport3 ;写控制字,计数器0,先读写低8位,后读写高8位,工作方式3,二进制计数
MOV AL,00110110B
OUT DX,AL
;下面设置计数器0初始计数值,1000D=03E8H,先写入低8位,接着写入高8位,也可以直接使用AX=1000,然后OUT DX,AL,MOV AL,AH,OUT DX,AL这样不用换算
MOV DX,ioport1
MOV AL,0E8H
OUT DX,AL
MOV AL,03H
OUT DX,AL
MOV DX,ioport3 ;写控制字,计数器1,先读写低8位,后读写高8位,工作方式3,二进制计数
MOV AL,01110110B
OUT DX,AL
MOV DX,ioport2 ;设置计数器0初始计数值
MOV AL,0E8H
OUT DX,AL
MOV AL,03H
OUT DX,AL
MOV AH,4CH ;退出
INT 21H
;==============================
RET
START ENDP
CODE ENDS
END STT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -