21,497
社区成员




;****************************
;bubble sort冒泡法排序
;****************************
data SEGMENT
a DW 2,3,27,18,11,9
data ENDS
code SEGMENT
main PROC far
assume CS:code,DS:data
start:
MOV AX,data
MOV DS,AX
MOV CX,4
DEC CX
loop1:
MOV DX,1
MOV DI,CX
MOV BX,0
loop2:
MOV AX,a[BX]
CMP a[BX+2],AX
JGE continue
XCHG AX,a[BX+2]
MOV a[BX],AX
SUB DX,DX
continue:
ADD BX,2
LOOP loop2
CMP DX,1
JE exit
MOV CX,DI
LOOP loop1
exit:
RET
main ENDP
code ENDS
END start
start::
push ds ; 这些指令一定要在对 ds 赋值之前
mov ax, 0
push ax
mov ax, 4c00h ; 需要的话,可以给 AL 赋程序的结束码
int 21h