Advertisement
joker546645

4_4 a

Nov 23rd, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. .686
  2. .model flat
  3. public  _przestaw
  4. .code
  5. _przestaw PROC
  6.      push      ebp       ; zapisanie zawartości EBP na stosie
  7.      mov       ebp,esp   ; kopiowanie zawartości ESP do EBP
  8.      push      ebx       ; przechowanie zawartości rejestru EBX
  9.      mov       ebx, [ebp+8]   ; adres tablicy tabl
  10.      mov       ecx, [ebp+12]  ; liczba elementów tablicy
  11.      dec       ecx
  12. ; wpisanie kolejnego elementu tablicy do rejestru EAX            
  13. ptl: mov       eax, [ebx]      
  14. ; porównanie elementu tablicy wpisanego do EAX z następnym
  15.      cmp       eax, [ebx+4]
  16.      jle       gotowe ; skok, gdy nie ma przestawiania
  17.      ; zamiana sąsiednich elementów tablicy
  18.      mov       edx, [ebx+4]
  19.      mov       [ebx], edx
  20.      mov       [ebx+4], eax
  21. gotowe:
  22.      add       ebx, 4  ; wyznaczenie adresu kolejnego elementu
  23.      loop      ptl       ; organizacja pętli
  24.      pop       ebx       ; odtworzenie zawartości rejestrów
  25.      pop       ebp
  26.      ret                 ; powrót do programu głównego
  27. _przestaw      ENDP
  28.                END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement