data segment
a dw 8h,5h,16h,84h,32h
data ends
code segment
main proc far
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov cx,5
dec cx
loop1: mov di,cx
mov bx,0
loop2: mov ax,a[bx]
cmp ax,a[bx+2]
jge continue
xchg ax,a[bx+2]
mov a[bx],ax
continue: add bx,2
loop loop2
mov cx,di
loop loop1
mov ah,4ch
int 21h
main endp
code ends
end start
a dw 8h,5h,16h,84h,32h
data ends
code segment
main proc far
assume cs:code,ds:data
start: mov ax,data
mov ds,ax
mov cx,5
dec cx
loop1: mov di,cx
mov bx,0
loop2: mov ax,a[bx]
cmp ax,a[bx+2]
jge continue
xchg ax,a[bx+2]
mov a[bx],ax
continue: add bx,2
loop loop2
mov cx,di
loop loop1
mov ah,4ch
int 21h
main endp
code ends
end start