开关状态显示.asm

来自「基于8086和8255的汇编程序」· 汇编 代码 · 共 48 行

ASM
48
字号
DATA    SEGMENT
DATA    ENDS
STACK   SEGMENT STACK
STA     DW 50 DUP(?)
TOP     EQU LENGTH STA
STACK   ENDS
CODE    SEGMENT
ASSUME  CS:CODE,DS:DATA,ES:DATA,SS:STACK
START:
	MOV     DX,203H    ;设置为A口输入,B口输出
	MOV     AL,90H
	OUT     DX,AL
 BG:    MOV     DX,200H    ;将A口状态从B口输出 
	IN      AL,DX
	MOV     DX,202H
	OUT     DX,AL      ;输出当前开关状态

        PUSH    BX         ;延迟0.5秒
	PUSH    CX
	MOV     BL,10          
	NEXT:   MOV CX,2801
	DELAY:  LOOP DELAY      
	        DEC BL
	        JNZ NEXT
	        POP CX
	        POP BX

	MOV     DX,202H       
	MOV     AL, 0FFH
	OUT     DX,AL       ;熄灭LED,产生闪烁

	PUSH    BX          ;延迟0.5秒
	PUSH    CX
	MOV     BL,10     
	NEXT1:   MOV CX,2801
	DELAY1:  LOOP DELAY1
	        DEC BL
	        JNZ NEXT1
	        POP CX
	        POP BX  
   
	JMP     BG

	CODE    ENDS
END     START


	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?