first commit
This commit is contained in:
92
Lab/Lab3/material/task2/code.asm
Executable file
92
Lab/Lab3/material/task2/code.asm
Executable file
@@ -0,0 +1,92 @@
|
||||
DATA SEGMENT
|
||||
EIGHT DB 7FH
|
||||
TWO DB 5BH
|
||||
FIVE DB 6DH
|
||||
BAR DB 40H
|
||||
A DB 77H
|
||||
T DW 0FFH
|
||||
DATA ENDS
|
||||
|
||||
CODE SEGMENT
|
||||
ASSUME CS:CODE, DS:DATA
|
||||
|
||||
START:
|
||||
MOV AX, DATA
|
||||
MOV DS, AX
|
||||
|
||||
MOV DX, 283H ; 命令口
|
||||
MOV AL, 10000000B ; 1|00(A组0方式)|0(PA输出)|0(PC4-7输出)|0(B组0方式)|0(PB输出)|0(PC0-3输出)
|
||||
OUT DX, AL
|
||||
|
||||
|
||||
LP:
|
||||
MOV DX, 280H ; A口,控制位码
|
||||
MOV AL, 10000000B ; 第1位,PA1置1
|
||||
OUT DX, AL
|
||||
MOV DX, 281H ; B口,控制段码
|
||||
MOV AL, EIGHT ; 输出数据段定义的字符“8”
|
||||
OUT DX, AL
|
||||
CALL DELAY ; 延时后清零
|
||||
|
||||
MOV DX, 280H
|
||||
MOV AL, 01000000B ; 第2位,PA2置1
|
||||
OUT DX, AL
|
||||
MOV DX, 281H
|
||||
MOV AL, TWO ; 输出数据段定义的字符“2”
|
||||
OUT DX, AL
|
||||
CALL DELAY
|
||||
|
||||
MOV DX, 280H
|
||||
MOV AL, 00100000B ; 第3位,PA3置1
|
||||
OUT DX, AL
|
||||
MOV DX, 281H
|
||||
MOV AL, FIVE ; 输出数据段定义的字符“5”
|
||||
OUT DX, AL
|
||||
CALL DELAY
|
||||
|
||||
MOV DX, 280H
|
||||
MOV AL, 00010000B ; 第4位,PA4置1
|
||||
OUT DX, AL
|
||||
MOV DX, 281H
|
||||
MOV AL, FIVE ; 输出数据段定义的字符“5”
|
||||
OUT DX, AL
|
||||
CALL DELAY
|
||||
|
||||
MOV DX, 280H
|
||||
MOV AL, 00001000B ; 第5位,PA5置1
|
||||
OUT DX, AL
|
||||
MOV DX, 281H
|
||||
MOV AL, BAR ; 输出数据段定义的字符“-”
|
||||
OUT DX, AL
|
||||
CALL DELAY
|
||||
|
||||
MOV DX, 280H
|
||||
MOV AL, 00000100B ; 第6位,PA6置1
|
||||
OUT DX, AL
|
||||
MOV DX, 281H
|
||||
MOV AL, A ; 输出数据段定义的字符“A”
|
||||
OUT DX, AL
|
||||
CALL DELAY
|
||||
|
||||
JMP LP ; 无限循环
|
||||
|
||||
DELAY PROC
|
||||
PUSH BX
|
||||
MOV BX, T
|
||||
DL1:
|
||||
DEC BX
|
||||
JNZ DL1
|
||||
POP BX
|
||||
; 将位码段码都置0,否则前一位显示的字符会在显示下一位字符显示前在该位上显示
|
||||
MOV DX, 280H
|
||||
MOV AL, 00000000B
|
||||
OUT DX, AL
|
||||
MOV DX, 281H
|
||||
MOV AL, 0
|
||||
OUT DX, AL
|
||||
|
||||
RET
|
||||
DELAY ENDP
|
||||
|
||||
CODE ENDS
|
||||
END START
|
||||
Reference in New Issue
Block a user