冒泡排序用汇编编写怎么编

用汇编语言编写冒泡排序是怎么一个思路?怎么写?
2025-02-03 03:59:29
推荐回答(3个)
回答1:

题目:请用冒泡方法对以BUFFER变量中存放的10个字节的数据进行排序。可在大数向上冒和向下沉中任选一种。变量定义如下
BUFFER DB 9,11,2,7,21,13,2,0,14,3

DSEG SEGMENT
n equ 10
BUFFER DB 9,11,2,7,21,13,2,0,14,3
DSEG ENDS
CSEG SEGMENT
assume cs:CSEG, ds:DSEG
MAIN PROC FAR ;主程序入口
mov ax, dseg
mov ds, ax
mov cx,n
dec cx
loop1: mov di,cx
mov bx,0
loop2: mov al,buffer[bx]
cmp al,buffer[bx+1]
jge continue
xchg al,buffer[bx+1]
mov buffer[bx],al
continue: add bx,1
loop loop2
mov cx,di
loop loop1
mov ah,1;按任意键退出
int 21h
mov ax, 4c00h ;程序结束,返回到操作系统系统
int 21h
MAIN ENDP
CSEG ENDS
END MAIN

回答2:

晓不得

回答3:

casl是什么?8086有~你可以参考下~
data segment
A db 9,7,168,3,6,13
data ends
code segment
assume ds:data,cs:code
start:
mov ax,data
mov ds,ax

mov bx,6
mov cx,5
mov si,0

a0003:
push cx
push si
a0002:
mov dl,A[si]
cmp dl,A[si+1]
jb a0001
xchg dl,A[si+1]
xchg A[si],dl
a0001: inc si
loop a0002
pop si
pop cx
loop a0003

mov ah,4ch
int 21h
code ends
end start