Advertisement
LincolnArantes

Assembly codigo simples

Oct 15th, 2018
195
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ; o codigo com cmp
  2.  
  3. ; A macro with two parameters
  4. ; Implements the write system call
  5.    %macro write_string 2
  6.       mov   eax, 4
  7.       mov   ebx, 1
  8.       mov   ecx, %1
  9.       mov   edx, %2
  10.       int   80h
  11.    %endmacro
  12.  
  13.  
  14.  
  15. section .text
  16.    global _start     ;must be declared for linker (gcc)
  17.    
  18. _start:          ;tell linker entry point
  19.  
  20.  
  21.  
  22.     ; macros-------inicio
  23.    
  24.    
  25.  ; ----macro mensage antes dos nome do programa
  26.   write_string msg1, len1
  27.   ;--------------------------
  28.  
  29.   ;---nome do programa
  30.    write_string msg6, len6  
  31.    ;----- fim nome do programa
  32.    
  33.    
  34.     ;-----macros message depois do nome do programa
  35.      write_string msg2, len2  
  36.      ;------ fim macro message depois do nome do programa
  37.    
  38.    
  39.    write_string msg3, len3              
  40.    ;write_string msg4, len4    
  41.    ;write_string msg5, len5
  42.     ; macros ------- fim
  43.  
  44. ; comparando valores que deu certo
  45. mov eax,0x1 ;coloca o valor no registrador eax
  46. mov ebx, 0x2 ; coloca o valor no registrador ebx
  47. cmp eax, ebx ; compara os dois registradores
  48. jne skip ; se não for igual pula
  49. call se_igual ; se for igual chama o se_igual abaixo(chamada)
  50. skip: ; abaixo dados para a saida
  51. mov eax,1
  52. mov ebx, 0
  53. int 0x80
  54.  
  55.  
  56.  
  57. ; chamada
  58. se_igual:
  59. write_string msg4, len4  
  60. ret
  61. ; fim de comparando valores
  62.  
  63.  
  64.  
  65.  
  66.    
  67.  
  68. section .data
  69.  
  70.  
  71.  
  72. msg1 db '----------------------------------------',0xA,0xD  
  73. len1 equ $ - msg1
  74.  
  75. ;------nome do programa
  76. msg6 db 'Sistema codorna - Descobrimento de dados',0xA,0xD  
  77. len6 equ $ - msg6
  78.  
  79. ;------fim nome do programa
  80.  
  81.  
  82.  
  83. msg2 db '----------------------------------------',0xA,0xD  
  84. len2 equ $ - msg2
  85.  
  86.  
  87.  
  88. ;--------inicio macros mensagens
  89.  
  90.  
  91. msg3 db 'Seja bem vindo ao sistema!',0xA,0xD    
  92. len3 equ $ - msg3          
  93.  
  94.  
  95. ;---- mensagem comparando valores
  96. msg4 db 'os valores sao iguais', 0xA,0xD
  97. len4 equ $- msg4
  98.  
  99. ;--- fim mensagem comparando valores
  100.  
  101.  
  102.  
  103. ;msg5 db 'Linux assembly programming! '
  104. ;len5 equ $- msg5
  105.  
  106. ;----- fim messages de macro
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement