Advertisement
Guest User

lab8 zad_a

a guest
Apr 16th, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ;lab8 a
  2. default rel
  3. global main
  4. extern scanf, printf
  5.  
  6. section .data
  7. tab TIMES 10 dd 0
  8. format db "%d", 0
  9.  
  10. section .text
  11. main:
  12.     push rbp
  13.     mov rbp, rsp
  14.    
  15. _loop:
  16.     mov r12d, 0
  17.     mov r13, tab
  18.    
  19.    
  20. _wprowadz:
  21.     cmp r12d, 10
  22.     jge _szukaj ;jae to jump if above or equal (above a greater porownuja wart.bezwzgl. i calkowita)
  23.    
  24.     mov rdi, format
  25.     mov rsi, r13
  26.     xor rax, rax
  27.     call scanf wrt ..plt
  28.    
  29.     inc r12d
  30.     add r13, 4 ;dodajemy 4 bajty do adresu, zeby przesuwac sie po tablicy
  31.    
  32.     jmp _wprowadz
  33.    
  34. _szukaj:
  35.     mov r12d, 0
  36.     mov r13d, [tab]
  37.    
  38. _petla:
  39.     cmp r12d, 10
  40.     jge _koniec
  41.     cmp r13d, [tab+4*r12] ;przesuwamy sie po tablicy, wyluskujac wartosci
  42.  
  43. _petla_cd: 
  44.     inc r12d
  45.     jmp _petla
  46.    
  47. _zmien:
  48.     mov r13d, [tab+4*r12]
  49.     jmp _petla_cd
  50.    
  51. _koniec:    
  52.     mov rdi, format
  53.     mov esi, r13d
  54.     xor rax, rax
  55.     call printf wrt ..plt
  56.    
  57.     mov rsp, rbp
  58.     pop rbp
  59.     ret
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement