Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ; o codigo com cmp
- ; A macro with two parameters
- ; Implements the write system call
- %macro write_string 2
- mov eax, 4
- mov ebx, 1
- mov ecx, %1
- mov edx, %2
- int 80h
- %endmacro
- section .text
- global _start ;must be declared for linker (gcc)
- _start: ;tell linker entry point
- ; macros-------inicio
- ; ----macro mensage antes dos nome do programa
- write_string msg1, len1
- ;--------------------------
- ;---nome do programa
- write_string msg6, len6
- ;----- fim nome do programa
- ;-----macros message depois do nome do programa
- write_string msg2, len2
- ;------ fim macro message depois do nome do programa
- write_string msg3, len3
- ;write_string msg4, len4
- ;write_string msg5, len5
- ; macros ------- fim
- ; comparando valores que deu certo
- mov eax,0x1 ;coloca o valor no registrador eax
- mov ebx, 0x2 ; coloca o valor no registrador ebx
- cmp eax, ebx ; compara os dois registradores
- jne skip ; se não for igual pula
- call se_igual ; se for igual chama o se_igual abaixo(chamada)
- skip: ; abaixo dados para a saida
- mov eax,1
- mov ebx, 0
- int 0x80
- ; chamada
- se_igual:
- write_string msg4, len4
- ret
- ; fim de comparando valores
- section .data
- msg1 db '----------------------------------------',0xA,0xD
- len1 equ $ - msg1
- ;------nome do programa
- msg6 db 'Sistema codorna - Descobrimento de dados',0xA,0xD
- len6 equ $ - msg6
- ;------fim nome do programa
- msg2 db '----------------------------------------',0xA,0xD
- len2 equ $ - msg2
- ;--------inicio macros mensagens
- msg3 db 'Seja bem vindo ao sistema!',0xA,0xD
- len3 equ $ - msg3
- ;---- mensagem comparando valores
- msg4 db 'os valores sao iguais', 0xA,0xD
- len4 equ $- msg4
- ;--- fim mensagem comparando valores
- ;msg5 db 'Linux assembly programming! '
- ;len5 equ $- msg5
- ;----- fim messages de macro
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement