西安邮电大学汇编作业

---------------;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0 EQU 0600H ;片选IOY0对应的端口始地址
MY8255_A EQU IOY0+00H2 ;8255的A口地址
MY8255_B EQU IOY0+01H
2 ;8255的B口地址
MY8255_C EQU IOY0+02H2 ;8255的C口地址
MY8255_MODE EQU IOY0+03H
2 ;8255的控制寄存器地址

SSTACK SEGMENT STACK
DW 32 DUP(?)
SSTACK ENDS
CODE SEGMENT
ASSUME CS:CODE
START: MOV DX, MY8255_MODE
MOV AL, 82H
OUT DX, AL
MOV BX, 8001H

	MOV DX,MY8255_B 
	IN AL,DX
	CALL DELAY
	CMP AL, 1
	JZ AA1
	
	
	MOV DX, MY8255_A 
	MOV AL,0FFH
	OUT DX,AL
	CALL DELAY
	JMP START

AA1: MOV DX, MY8255_A
MOV AL, BH
OUT DX, AL
ROR BH, 1
CALL DELAY
CALL DELAY

	MOV DX,MY8255_B 
	IN AL,DX
	CALL DELAY
	CMP AL,0
	JZ START
	
	JMP AA1

DELAY: PUSH CX
MOV CX, 0F000H
AA2: PUSH AX
POP AX
LOOP AA2
POP CX
RET
CODE ENDS
END START

;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
CODE	SEGMENT
		ASSUME CS:CODE
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL
		MOV BX, 8001H
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL, 1
		JZ AA1
		
		
		MOV DX, MY8255_A 
		MOV AL,0FFH
		OUT DX,AL
		CALL DELAY
		JMP START
AA1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		CALL DELAY
		CALL DELAY
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP AA1
DELAY:	PUSH CX
		MOV CX, 0F000H
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
CODE	ENDS
		END  START

;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
CODE	SEGMENT
		ASSUME CS:CODE
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL
		MOV BX, 8001H
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL, 1
		JZ AA1
		CMP AL,2
		JZ BB1
		
		MOV DX, MY8255_A 
		MOV AL,0FFH
		OUT DX,AL
		CALL DELAY
		JMP START
AA1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		CALL DELAY
		CALL DELAY
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP AA1
		
BB1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP BB1
DELAY:	PUSH CX
		MOV CX, 0F000H
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
CODE	ENDS
		END  START


;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
DATA SEGMENT 
	 TABLE DB 03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,7EH,76H,0F3H
DATA ENDS

CODE	SEGMENT
		ASSUME CS:CODE,DS: DATA
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL
		MOV BX, 8001H
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL, 1
		JZ AA1
		CMP AL,2
		JZ BB1
		
		MOV DX, MY8255_A 
		MOV AL,0FFH
		OUT DX,AL
		CALL DELAY
		JMP START
AA1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		;CALL DELAY
		;CALL DELAY
		
		
		MOV DX, MY8255_C
	MOV AL,06H
		OUT DX, AL

		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP AA1
		
BB1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
MOV DX, MY8255_C
	MOV AL,5BH
		OUT DX, AL		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP BB1
DELAY:	PUSH CX
		MOV CX, 0F000H
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
CODE	ENDS
		END  START


;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
DATA SEGMENT 
	 ;TABLE DB 03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,7EH,76H,0F3H
DATA ENDS

CODE	SEGMENT
		ASSUME CS:CODE,DS: DATA
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL
		MOV BX, 8001H
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL, 1
		JZ AA1
		CMP AL,2
		JZ BB1
		
		CMP AL,4
		JZ DD1
		CMP AL, 8
		JZ CC1
		
		MOV DX, MY8255_A 
		MOV AL,0FFH
		OUT DX,AL
		CALL DELAY
		JMP START
AA1:	MOV DX, MY8255_A	;
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	 
		
		MOV DX, MY8255_C
		MOV AL,06H
		OUT DX, AL

		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP AA1
FF: JMP START		
BB1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,5BH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
	
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP BB1
		
DD1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,4FH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ FF
		
		JMP DD1		
		
		
CC1:	MOV DX, MY8255_A
		MOV AL, BH
		OUT DX, AL
		ROL BH, 1	
		MOV DX, MY8255_C
		MOV AL,3FH
		OUT DX, AL		
		CALL DELAY
	
	
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JE FF
		
		JMP CC1
		
DELAY:	PUSH CX
		MOV CX, 0F000H
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
CODE	ENDS
		END  START


最终

;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
DATA SEGMENT 
	 ;TABLE DB 03FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,7EH,76H,0F3H
DATA ENDS

CODE	SEGMENT
		ASSUME CS:CODE,DS: DATA
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL
		MOV BX, 8001H
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL, 1
		JZ AA1
		CMP AL,2
		JZ BB1
		
		CMP AL,4
		JZ DD1
		CMP AL, 8
		JZ CC1
		
		MOV DX, MY8255_A 
		MOV AL,0FFH
		OUT DX,AL
		CALL DELAY
		JMP START
AA1:	MOV DX, MY8255_A	;快
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	 
		
		MOV DX, MY8255_C
		MOV AL,06H
		OUT DX, AL

		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP AA1
FF: JMP START		
BB1:	MOV DX, MY8255_A	;慢
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,5BH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
	
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP BB1
		
DD1:	MOV DX, MY8255_A	;鞋
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,4FH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ FF
		
		JMP DD1		
		
		
CC1:	MOV DX, MY8255_A	;甩干
		MOV AL, BH
		OUT DX, AL
		ROL BH, 1	
		MOV DX, MY8255_C
		MOV AL,3FH
		OUT DX, AL		
		CALL DELAY
	
	
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JE FF
		
		JMP CC1
		
DELAY:	PUSH CX
		MOV CX, 0F000H
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
CODE	ENDS
		END  START

2.0

;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
DATA SEGMENT 
	 mm db (?)
DATA ENDS

CODE	SEGMENT
		ASSUME CS:CODE,DS: DATA
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL
		MOV BX, 8001H
		
		MOV DX,MY8255_B 
		IN AL,DX
		mov mm,0ffh
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CMP AL, 1
		JZ AA1
		CMP AL,2
		JZ BB1
		
		CMP AL,4
		JZ DD1
		CMP AL, 8
		JZ CC1
		
		MOV DX, MY8255_A 
		MOV AL,0FFH
		OUT DX,AL
		CALL DELAY
		JMP START
AA1:	MOV DX, MY8255_A	;快
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	 
		
		MOV DX, MY8255_C
		MOV AL,06H
		OUT DX, AL
		call delay
	    DEC mm
		CMP mm,0
		JZ CC1
		
		JMP AA1
FF: JMP START		
BB1:	MOV DX, MY8255_A	;慢
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,5BH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
	
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ START
		
		JMP BB1
		
DD1:	MOV DX, MY8255_A	;鞋
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,4FH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ FF
		
		JMP DD1		
		
		
CC1:	MOV DX, MY8255_A	;甩干
		MOV AL, BH
		OUT DX, AL
		ROL BH, 1	
		MOV DX, MY8255_C
		MOV AL,3FH
		OUT DX, AL		
		CALL DELAY
	
	
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JE FF
		
		JMP CC1
		
DELAY:	PUSH CX
		MOV CX, 0F000H
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
CODE	ENDS
		END  START

3.0

;=========================================================
; 文件名: A82552.ASM
; 功能描述: A口为输出,B口为输出,流水灯显示
;=========================================================

IOY0         EQU   0600H          ;片选IOY0对应的端口始地址
MY8255_A     EQU   IOY0+00H*2     ;8255的A口地址
MY8255_B     EQU   IOY0+01H*2     ;8255的B口地址
MY8255_C     EQU   IOY0+02H*2     ;8255的C口地址
MY8255_MODE  EQU   IOY0+03H*2     ;8255的控制寄存器地址

SSTACK	SEGMENT STACK
		DW 32 DUP(?)
SSTACK	ENDS
DATA SEGMENT 
	 MK db 08H
	 MM DB 08H
	 MX DB 08H
	 TSHUI DB 08H
DATA ENDS

CODE	SEGMENT
		ASSUME CS:CODE,DS: DATA
START:	MOV DX, MY8255_MODE
		MOV AL, 82H
		OUT DX, AL
		MOV BX, 8001H
		
		MOV DX,MY8255_B 
		IN AL,DX
		;mov mm,0fh
		MOV MK, 18H
		MOV MM, 28H
		MOV MX, 38H
		MOV TSHUI, 18H
		CALL DELAY
		CALL DELAY
		;CALL DELAY
		;CALL DELAY
		;CALL DELAY
		CMP AL, 1
		JZ AA1
		CMP AL,2
		JZ BB1
		
		CMP AL,4
		JZ DD1
		CMP AL, 8
		JZ GG
		
		MOV DX, MY8255_A 
		MOV AL,0FFH
		OUT DX,AL
		CALL DELAY
		JMP START
AA1:	MOV DX, MY8255_A	;快
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	 
		
		MOV DX, MY8255_C
		MOV AL,06H
		OUT DX, AL
		call delay
	    DEC MK
		CMP MK,0
		JZ CC1
		MOV DX,MY8255_B 
		IN AL,DX
		CMP AL, 0
		JZ START
		JMP AA1
;FF: JMP START
GG: JMP CC1		
BB1:	MOV DX, MY8255_A	;慢
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,5BH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
		;call delay
	    DEC MM
		CMP MM,0
		JZ CC1
		
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ FF
		
		JMP BB1
FF: JMP START		
DD1:	MOV DX, MY8255_A	;鞋
		MOV AL, BH
		OUT DX, AL
		ROR BH, 1	
		MOV DX, MY8255_C
		MOV AL,4FH
		OUT DX, AL		
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		CALL DELAY
		;call delay
	    DEC MX
		CMP MK,0
		JZ CC1
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ FF
		
		JMP DD1		
		
		
CC1:	MOV DX, MY8255_A	;甩干
		MOV AL, BH
		OUT DX, AL
		ROL BH, 1	
		MOV DX, MY8255_C
		MOV AL,66H
		OUT DX, AL		
		CALL DELAY
	
	
		call delay
	    DEC TSHUI
		CMP TSHUI,0
		JZ ENDT
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JE FF
		
		JMP CC1
TUMP:	JMP FF		
ENDT:	CALL DELAY
		CALL DELAY
		MOV DX, MY8255_A 
		MOV AL,0AAH
		OUT DX,AL
		CALL DELAY
		CALL DELAY
		MOV DX, MY8255_A 
		MOV AL,55H
		OUT DX,AL
		CALL DELAY
		CALL DELAY
		MOV DX, MY8255_A 
		MOV AL,55H
		OUT DX,AL
		;CALL DELAY
		;CALL DELAY
		MOV DX,MY8255_B 
		IN AL,DX
		CALL DELAY
		CMP AL,0
		JZ TUMP
		JMP ENDT

DELAY  	PROC NEAR
		PUSH CX
		MOV CX, 0F000H
DELAY 	ENDP
AA2:	PUSH AX
		POP  AX
		LOOP AA2
		POP  CX
		RET
CODE	ENDS
		END  START


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值