Advertisement
matogens

zad_z_tablicy

May 14th, 2019
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;nwd(a, b)
  2. ;{
  3.     ;if(b==0)
  4.         ;return a;
  5.     ;else
  6.         ;nwd(b, a%b);
  7. ;}
  8.  
  9.  
  10. default rel
  11. global main
  12. extern scanf
  13. extern printf
  14.  
  15. section .data
  16. format db "%d", 10,0
  17. formatld db "%ld", 10,0
  18.  
  19. section .text
  20.  
  21. main:
  22.    
  23.     push rbp
  24.     mov rbp, rsp
  25.  
  26.     mov rdi, 3084
  27.     mov rsi, 1424
  28.     call nwd
  29.  
  30.     mov rdi, format
  31.     mov rsi, rax
  32.     xor rax, rax
  33.     call printf wrt ..plt
  34.  
  35.     mov rsp, rbp
  36.     pop rbp
  37.     ret
  38.  
  39. nwd:
  40.  
  41.     cmp rsi, 0
  42.     je _zwroc
  43.  
  44.     mov eax, edi
  45.     xor rdx, rdx   
  46.     div esi
  47.  
  48.     mov rdi, rsi
  49.     mov rsi, rdx
  50.     call nwd
  51.  
  52. _zwroc:
  53.  
  54.     mov rax, rdi
  55.     ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement