⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sotp.asm

📁 通过调试的有用的单片机控制程序
💻 ASM
字号:
;入口条件:数据块的首址在R0中,字节数在R7中。
;出口信息:完成排序(增序)
;影响资源:PSW、A、R2~R6      堆栈需求:  2字节

SORT:	MOV	A,R7
	MOV	R5,A		;比较次数初始化
SRT1:	CLR	F0		;交换标志初始化
	MOV	A,R5		;取上遍比较次数
	DEC	A		;本遍比上遍减少一次
	MOV	R5,A		;保存本遍次数
	MOV	R2,A		;复制到计数器中
	JZ	SRT5		;若为零,排序结束
	MOV	A,R0		;保存数据指针
	MOV	R6,A
SRT2:	MOV	A,@R0		;读取一个数据
	MOV	R3,A
	INC	R0		;指向下一个数据
	MOV	A,@R0		;再读取一个数据
	MOV	R4,A
	CLR	C
	SUBB	A,R3		;比较两个数据的大小
	JNC	SRT4		;顺序正确(增序或相同),不必交换
	SETB	F0		;设立交换标志
	MOV	A,R3		;将两个数据交换位置
	MOV	@R0,A
	DEC	R0
	MOV	A,R4
	MOV	@R0,A
	INC	R0		;指向下一个数据
SRT4:	DJNZ	R2,SRT2		;完成本遍的比较次数
	MOV	A,R6		;恢复数据首址
	MOV	R0,A
	JB	F0,SRT1		;本遍若进行过交换,则需继续排序
SRT5:	RET			;排序结束

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -