输入格式:在代码中设置数组
另有手动输入数组的,参考:https://www.cdsy.xyz/computer/programme/masm/230729/cd45035.html
Include io.inc
.model small ;定义程序的存储模型(small表示小模型)
.stack
.data
H dw 231,342,389,471,280,22,43 ;假设一个数组
Q = lengthof H ;数组的元素个数
.code
.startup
mov cx,Q ;cx<--数组元素个数
dec cx ;元素个数减一为外循环次数
loop1: mov dx,cx ;dx<--内循环次数
mov bx,offset H
loop2: mov ax,[bx]
cmp ax,[bx+2] ;前一个元素与后一个元素比较
jng cotinue ;前一个元素不大于后一个元素就不进行交换
xchg ax,[bx+2] ;否则进行交换
mov [bx],ax
cotinue: add bx,2 ;下一对元素
dec dx
jnz loop2 ;内循环环尾
loop loop1 ;外循环环尾
;输出如下:
mov si,0
mov cx,Q
maopao:
mov AX,[H+si]
call dispsiw ;显示ax的数值
call dispcrlf ; 回车换行
add si,2
loop maopao
.exit
End
运行结果: