Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; Código para buferrizar todo o alfabeto na memoria e imprimir na tela
- ; montar com: nasm -f elf -l alfabeto.lst alfabeto.asm
- ; linkar com: gcc -o alfabeto alfabeto.o
- SECTION .data
- ini: db "Esse 'e o alfabeto",10
- lini: equ $-ini
- SECTION .bss
- buf: resb 26d
- lbuf: equ $-buf
- SECTION .text
- global main
- main:
- mov edx,lini ; imprimi texto inicial
- mov ecx,ini
- mov ebx,1
- mov eax,4
- int 0x80
- xor ecx,ecx ; prepara buffer
- mov cl,26d ; para s 26 letras do alfabeto
- mov esi,buf ; SI aponta para o buffer
- mov al,0x61 ; al começa em a
- alfa:
- mov [esi],al ; valor de al no buffer
- inc al ; proxima letra
- inc esi ; proximo endreço do buffer
- loop alfa
- impri:
- mov edx,lbuf ; rotina de impressão, comprimeto do buffer
- mov ecx,buf ; inicio do buffer
- mov ebx,1 ; saída padrão = tela
- mov eax,4 ; serviço 4 da int 80 = sys_write
- int 0x80
- noval:
- mov al,10 ; imprimir nova linha '\n'
- mov [buf],al ; cuja valor ASCII é 10
- mov edx,1
- mov ecx,buf
- mov ebx,1
- mov eax,4
- int 0x80
- ret
Advertisement
Add Comment
Please, Sign In to add comment