输入格式:在代码中设置数组
另有手动输入数组的,参考: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
-
运行结果: