section .bss
buffer resb 64 ; Reserva 64 bytes para o buffer
section .text
global _start ; Define o ponto de entrada do programa
_start:
mov rax, 4 ; Coloca 4 em rax
mov rbx, 4 ; Coloca 4 em rbx
cmp rax, rbx ; Compara rax com rbx
jz iguais ; Se forem iguais, salta para 'iguais'
mov rcx, 2 ; Se não forem iguais, coloca 2 em rcx
jmp fim ; Salta para 'fim'
iguais:
mov rcx, 7 ; Se forem iguais, coloca 7 em rcx
fim:
; Imprime o valor de rcx (que é entre 0 e 9)
add rcx, '0' ; Converte o valor de rcx para o caractere ASCII correspondente
; Exibe o valor de rcx na tela
mov rax, 1 ; Syscall sys_write
mov rdi, 1 ; File descriptor 1 (stdout)
mov rsi, rcx ; Caractere a ser impresso
mov rdx, 1 ; Apenas 1 byte a ser escrito
syscall ; Chama a syscall
; Final do programa
mov rax, 60 ; Syscall sys_exit
xor rdi, rdi ; Código de saída 0 (sucesso)
syscall ; Chama a syscall de saída
c2VjdGlvbiAuYnNzCiAgICBidWZmZXIgcmVzYiA2NCAgICAgICAgICAgOyBSZXNlcnZhIDY0IGJ5dGVzIHBhcmEgbyBidWZmZXIKCnNlY3Rpb24gLnRleHQKICAgIGdsb2JhbCBfc3RhcnQgICAgICAgICAgICA7IERlZmluZSBvIHBvbnRvIGRlIGVudHJhZGEgZG8gcHJvZ3JhbWEKCl9zdGFydDoKICAgIG1vdiByYXgsIDQgICAgICAgICAgICAgIDsgQ29sb2NhIDQgZW0gcmF4CiAgICBtb3YgcmJ4LCA0ICAgICAgICAgICAgICA7IENvbG9jYSA0IGVtIHJieAogICAgY21wIHJheCwgcmJ4ICAgICAgICAgICAgOyBDb21wYXJhIHJheCBjb20gcmJ4CiAgICBqeiBpZ3VhaXMgICAgICAgICAgICAgICA7IFNlIGZvcmVtIGlndWFpcywgc2FsdGEgcGFyYSAnaWd1YWlzJwogICAgCiAgICBtb3YgcmN4LCAyICAgICAgICAgICAgICA7IFNlIG7Do28gZm9yZW0gaWd1YWlzLCBjb2xvY2EgMiBlbSByY3gKICAgIGptcCBmaW0gICAgICAgICAgICAgICAgICA7IFNhbHRhIHBhcmEgJ2ZpbScKICAgIAppZ3VhaXM6CiAgICBtb3YgcmN4LCA3ICAgICAgICAgICAgICA7IFNlIGZvcmVtIGlndWFpcywgY29sb2NhIDcgZW0gcmN4CgpmaW06CiAgICA7IEltcHJpbWUgbyB2YWxvciBkZSByY3ggKHF1ZSDDqSBlbnRyZSAwIGUgOSkKICAgIGFkZCByY3gsICcwJyAgICAgICAgICAgIDsgQ29udmVydGUgbyB2YWxvciBkZSByY3ggcGFyYSBvIGNhcmFjdGVyZSBBU0NJSSBjb3JyZXNwb25kZW50ZQoKICAgIDsgRXhpYmUgbyB2YWxvciBkZSByY3ggbmEgdGVsYQogICAgbW92IHJheCwgMSAgICAgICAgICAgICAgOyBTeXNjYWxsIHN5c193cml0ZQogICAgbW92IHJkaSwgMSAgICAgICAgICAgICAgOyBGaWxlIGRlc2NyaXB0b3IgMSAoc3Rkb3V0KQogICAgbW92IHJzaSwgcmN4ICAgICAgICAgICAgOyBDYXJhY3RlcmUgYSBzZXIgaW1wcmVzc28KICAgIG1vdiByZHgsIDEgICAgICAgICAgICAgIDsgQXBlbmFzIDEgYnl0ZSBhIHNlciBlc2NyaXRvCiAgICBzeXNjYWxsICAgICAgICAgICAgICAgICA7IENoYW1hIGEgc3lzY2FsbAoKICAgIDsgRmluYWwgZG8gcHJvZ3JhbWEKICAgIG1vdiByYXgsIDYwICAgICAgICAgICAgIDsgU3lzY2FsbCBzeXNfZXhpdAogICAgeG9yIHJkaSwgcmRpICAgICAgICAgICAgOyBDw7NkaWdvIGRlIHNhw61kYSAwIChzdWNlc3NvKQogICAgc3lzY2FsbCAgICAgICAgICAgICAgICAgOyBDaGFtYSBhIHN5c2NhbGwgZGUgc2HDrWRhCg==