Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- include \masm32\include\masm32rt.inc
- SORT PROTO :DWORD, :DWORD
- .data
- arr db 20 dup(0)
- .code
- start:
- INVOKE StdIn, ADDR arr, 20
- INC EAX
- INVOKE SORT, OFFSET arr, EAX
- INVOKE StdOut, ADDR arr
- INVOKE StdOut, chr$(13,10)
- inkey
- exit
- SORT PROC z1:DWORD, z2:DWORD
- @@sortP:
- MOV EAX, z2
- XOR BL, BL
- SUB AL,2
- MOV ESI, z1
- MOV EDI, ESI
- ADD EDI, EAX
- @@sortG:
- MOV AL, [ESI]
- MOV AH, [ESI + 1]
- CMP AL, AH
- JLE @F
- XCHG AL, AH
- MOV BL, 1
- @@:
- MOV [ESI], AL
- MOV [ESI + 1], AH
- INC ESI
- CMP ESI, EDI
- JL @@sortG
- CMP BL, 1
- JE @@sortP
- RET
- SORT ENDP
- end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement