//选择排序
DATAx09SEGMENT
BUFx09DB 12,-56,7,0,34,-12,10,10,-23,-12
CUNTx09EQU $-BUF
DATAx09ENDS
STACK1x09SEGMENTx09PARA STACK
x09DW 20H DUP(0)
STACK1x09ENDS
CODEx09SEGMENT
x09ASSUME CS:CODE,DS:DATA,SS:STACK1
START:x09MOV AX,DATA
x09MOV DS,AX
x09;----BEGIN---
x09MOV CX,CUNT-1
x09MOV SI,0
x09MOV DI,SI
x09MOV AL,BUF[SI]
NEXT:x09INC SI
x09CMP SI,CUNT-1
x09JA LOP
x09CMP AL,BUF[SI]
x09JLE NEXT
x09XCHG AL,BUF[SI]
x09JMP NEXT
LOP:x09MOV BUF[DI],AL
x09INC DI
x09MOV SI,DI
x09MOV AL,BUF[SI]
x09LOOP NEXT
x09;---END----
x09MOV AH,4CH
x09INT 21H
CODEx09ENDS
x09END START