Advertisement
LincolnArantes

Soma simples de inteiros

Oct 19th, 2018
151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ; Código escrito por Lincoln Cesar dos Reis Arantes
  2. ; neste tipo de soma o resultado não pode passar de 9
  3.  
  4.  
  5. section .text
  6.  
  7. global _start
  8.  
  9. _start:
  10.  
  11.   ;-------mensagem na tela pedindo a entrada dos dados 1- mensagem antes do imput
  12.  
  13.     mov     ecx, msg
  14.     mov     edx, len
  15.     mov     ebx, 1
  16.     mov     eax, 4
  17.     int     0x80
  18.  
  19.  
  20. ;----------
  21.  
  22. ; Entrada Dados (imput)
  23.   mov eax, 3
  24.   mov ebx, 0
  25.   mov ecx, var1
  26.   mov edx, 40  ; maximo de entrada de dados
  27.   int 0x80
  28. ;---------------------------------------------------------------------------
  29.  
  30.  
  31.   ;-------mensagem na tela pedindo a entrada dos dados 2 - mensagem antes do imput
  32.  
  33.     mov     ecx, msg2
  34.     mov     edx, len2
  35.     mov     ebx, 1
  36.     mov     eax, 4
  37.     int     0x80
  38.  
  39.  
  40. ;----------
  41.  
  42. ; Entrada Dados (imput)
  43.   mov eax, 3
  44.   mov ebx, 0
  45.   mov ecx, var2
  46.   mov edx, 40  ; maximo de entrada de dados
  47.   int 0x80
  48. ;---------------------------------------------------------------------------
  49.  
  50.  
  51.  
  52.     mov     eax, [var1]
  53.     sub     eax, '0'
  54.     mov     ebx, [var2]
  55.     sub     ebx, '0'
  56.     add     eax, ebx
  57.     add     eax, '0'
  58.  
  59.     mov     [sum], eax
  60.  
  61.  
  62.  
  63.   ;-------mensagem na tela antes de printar o resultado
  64.  
  65.     mov     ecx, msgresult
  66.     mov     edx, lenresult
  67.     mov     ebx, 1
  68.     mov     eax, 4
  69.     int     0x80
  70.  
  71.  
  72. ;---------------printa o valor somado na tela
  73.     mov     ecx, sum
  74.     mov     edx, 1
  75.     mov     ebx, 1
  76.     mov     eax, 4
  77.     int     0x80
  78.  
  79.     mov     eax, 1
  80.     int     0x80
  81.  
  82. section .data
  83.    
  84.     msg db  "Entre com o primeiro número (inteiro) "
  85.     len equ $ - msg
  86.  
  87.     msg2 db  "Entre com o segundo número (inteiro) "
  88.     len2 equ $ - msg2
  89.  
  90.  
  91.        msgresult db  "O resultado é:   "
  92.     lenresult equ $ - msgresult
  93.    
  94.  
  95. segment .bss
  96.  
  97.     sum resb 10
  98.    
  99.     var1 resb 5
  100.  
  101.     var2 resb 5
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement