Advertisement
WSTI

ZadanieIO

Jan 18th, 2013
182
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. include \masm32\include\masm32rt.inc
  2. SORT PROTO :DWORD, :DWORD
  3.  
  4. .data
  5.       arr db 20 dup(0)
  6.      
  7. .code
  8. start:
  9.  
  10. INVOKE StdIn, ADDR arr, 20
  11. INC EAX
  12. INVOKE SORT, OFFSET arr, EAX
  13. INVOKE StdOut, ADDR arr
  14. INVOKE StdOut, chr$(13,10)
  15.  
  16. inkey
  17. exit
  18.  
  19. SORT PROC z1:DWORD, z2:DWORD
  20. @@sortP:
  21.         MOV EAX, z2
  22.         XOR BL, BL
  23.         SUB AL,2
  24.         MOV  ESI, z1
  25.         MOV EDI, ESI
  26.         ADD EDI, EAX
  27. @@sortG:
  28.         MOV AL, [ESI]
  29.         MOV AH, [ESI + 1]
  30.         CMP AL, AH
  31.         JLE @F
  32.             XCHG AL, AH
  33.             MOV BL, 1
  34.         @@:
  35.             MOV [ESI], AL
  36.             MOV [ESI + 1], AH
  37.             INC ESI
  38.             CMP ESI, EDI
  39.             JL @@sortG
  40.         CMP BL, 1
  41.         JE @@sortP  
  42.  
  43.    RET
  44. SORT ENDP
  45. end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement