Sunteți pe pagina 1din 3

ASS5 SEGMENT PARA PUBLIC 'CODE'

ASSUME CS:ASS5
ORG 1000H

START:

MOV AL, 80H


OUT 1EH, AL

MOV SI, OFFSET DATA


MOV DX, 8

;for collumn 6 which is glowing green


COL6:

;PORT-A
MOV AL, BYTE PTR CS:[SI]
OUT 18H, AL

;PORT-B
MOV AL,0FFH
OUT 1AH, AL

;PORT-C
MOV AL,040H
OUT 1CH, AL

;delay between one to another light in same column


MOV CX, 0FFF7H
D1: LOOP D1

INC SI
DEC DX

CMP DX, 0

JNE COL6

MOV AL, 0FFH


OUT 18H, AL
OUT 1AH, AL
MOV AL, 00H
OUT 1CH, AL

;delay for starting next column


MOV CX, 0FFFFH
L1: LOOP L1

MOV SI, OFFSET DATA


MOV DX, 8

;for collumn 0 which is glowing red


COL0:
;PORT-A
MOV AL,0FFH
OUT 18H, AL

;PORT-B
MOV AL, BYTE PTR CS:[SI]
OUT 1AH, AL

;PORT-C
MOV AL,01H
OUT 1CH, AL

;delay between one to another light in same column


MOV CX, 0FFF7H
D2: LOOP D2

INC SI
DEC DX

CMP DX, 0

JNE COL0

MOV AL, 0FFH


OUT 18H, AL
OUT 1AH, AL
MOV AL, 00H
OUT 1CH, AL

;delay for starting next column


MOV CX, 0FFFFH
L2: LOOP L2

MOV SI, OFFSET DATA


MOV DX, 8

;for collumn 2 which is glowing orange


COL2:

;PORT-A
MOV AL, BYTE PTR CS:[SI]
OUT 18H, AL

;PORT-B
MOV AL, BYTE PTR CS:[SI]
OUT 1AH, AL

;PORT-C
MOV AL,04H
OUT 1CH, AL

;delay between one to another light in same column


MOV CX, 0FFF7H
D3: LOOP D3

INC SI
DEC DX

CMP DX, 0
JNE COL2

MOV AL, 0FFH


OUT 18H, AL
OUT 1AH, AL
MOV AL, 00H
OUT 1CH, AL

;delay for starting next column


MOV CX, 0FFFFH
L3: LOOP L3

JMP DEST

DATA:

DB 0FEH
DB 0FDH
DB 0FBH
DB 0F7H
DB 0EFH
DB 0DFH
DB 0BFH
DB 07FH

DEST:

ASS5 ENDS

END START

S-ar putea să vă placă și