当前位置:首页 > 单片机 > 单片机
[导读]例:选择法排序(降序)N EQU 10FIR EQU 40HSORT:MOV A,#N ;DEC AMOV R7,A ;外循环数MOV A,#FIRMOV R0,A ;数组首址NEXT0:PUSH ACC ;保存本轮第一个字节地址MOV A,R7MOV R6,A ;内循环数MOV A,@R0 ;取第

例:选择法排序(降序)

N EQU 10

FIR EQU 40H

SORT:

MOV A,#N ;

DEC A

MOV R7,A ;外循环数

MOV A,#FIR

MOV R0,A ;数组首址

NEXT0:

PUSH ACC ;保存本轮第一个字节地址

MOV A,R7

MOV R6,A ;内循环数

MOV A,@R0 ;取第一个字节

NEXT1:

INC R0

MOV B,@R0

CJNE A,B,L1 ;第一个字节与另一字节比较

SJMP L2

L1:JC L2 ;大于或等于,不交换

XCH A,@R0 ;小于,交换

DJNZ R6,NEXT1 ;较小的字节在A中,取下一字节与它比较。

POP B ;一轮比较结束

MOV R0,B ;恢复该轮第一个字节的地址

MOV @R0,A ;把该轮最小的数存放到第一个字节

INC R0 ;下一轮的字节地址

MOV A,R0

DJNZ R7,NEXT0 ;下一轮

RET

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭