Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- place 1000h
- num EQU 23H
- DISPLAYS EQU 0A000H ; endereço dos displays de 7 segmentos (periférico POUT-1)
- place 0h
- mov r1, DISPLAYS
- mov r6, num
- mov r5, r6 ; faz uma copia do valor
- inicio:
- ; o seguinte faz unidade
- ; nibble menos sig
- mov r0, 000FH
- and r5, r0
- mov r0, 10
- mod r5, r0 ; r5 vale o resto da div por 10
- ; nibble maior
- mov r0, 00F0H
- mov r4, r6
- and r4, r0
- mov r0, 16
- mul r4, r0
- mov r0, 10
- mod r4, r0
- ; soma
- add r5, r4
- ; mod 10
- mod r5, r0
- ; escreve displays
- movb [r1], r5
- ; fim unidade
- ; a seguir, dezenas
- ; nibble low
- mov r4, r6
- mov r0, 000FH
- and r4, r0
- ; div 10
- mov r0, 10
- div r4, r0
- ; nibble high
- mov r3, r6
- fim:
- jmp fim
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement