Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- section .text
- global _start
- section .data
- msg db 'fizzbuzz'
- len equ $ - msg
- nl db 0x0a
- _start:
- mov r9, 1
- loop:
- mov r10, msg
- mov r11, 0
- mov r12, 0
- mov rcx, 1
- mod:
- add rcx, 2
- cmp rcx, 7
- je is_n
- mov rdx, 0
- mov rax, r9
- div rcx
- cmp dl, 0
- jne not_mod
- add r11, 4
- jmp mod
- not_mod:
- sub r10, r11
- add r10, 4
- jmp mod
- is_n:
- cmp r11, 0
- jne print
- append_unsigned:
- mov rax, r9
- mov rcx, 10
- mov r8, 0
- append_digit:
- mov rdx, 0
- div rcx
- add r8b, '0'
- add r8b, dl
- shl r8, 8
- cmp rax, 0
- jne append_digit
- push r8
- mov r10, rsp
- mov r11, 8
- mov r12, 8
- print:
- mov eax, 1
- mov edi, 1
- mov rsi, r10
- mov rdx, r11
- syscall
- add rsp, r12
- mov eax, 1
- mov edi, 1
- mov rsi, nl
- mov rdx, 1
- syscall
- inc r9
- cmp r9, 100
- jle loop
- exit:
- mov eax, 60
- mov edi, 0
- syscall
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement