📄 gg203.asm
字号:
;gg203.asm/gg3.asm
;for 读A口送B口<芯片8255A:A口接4开关,B口接1个八段显示器,pc7单脉冲>
;2005-05
;lcy/p_Sa
data SEGMENT
BUF DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H,88h,83h,0c6h,0a1h,86h,09h;0-F八段显示器代码
PA EQU 280h
PB EQU 281h
PC EQU 282h
PCTL EQU 283h
data ENDS
stack0 SEGMENT para stack
DW 20h DUP(0)
stack0 ENDS
coseg SEGMENT
ASSUME CS:coseg,DS:data,SS:stack0
start: MOV AX, data
MOV DS, AX
;================MOV-DS-AX==============
MOV DX, PCTL
MOV AL, 98h ;1-0011-000B:A口方式0输入,B口方式0输出
OUT DX, AL
XOR BX, BX
LEA BX, BUF
MOV CX, 30H
L1: MOV DX, PC
IN AL, DX
TEST AL, 80H
JZ L1
MOV DX, PA
IN AL, DX
AND AL, 0FH ;A口输入取低4位
XLAT ;AL <= ((BX)+(AL)),AL取得相应八段显示器代码
;或者
;XOR BX, BX
;MOV BL, AL
;MOV AL, BYTE PTR BUF[BX]
INC DX ;A口变B口
OUT DX, AL
MOV DX, PC
L2: IN AL, DX
TEST AL, 80H
JNZ L2
LOOP L1
;================INT-21H================
MOV AH, 4ch
INT 21h
coseg ENDS
END start
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -