?? 單字節(jié)無(wú)符號(hào)數(shù)據(jù)塊排序.txt
字號(hào):
標(biāo)號(hào): SORT功能:?jiǎn)巫止?jié)無(wú)符號(hào)數(shù)據(jù)塊排序(增序)
入口條件:數(shù)據(jù)塊的首址在R0中,字節(jié)數(shù)在R7中。
出口信息:完成排序(增序)
影響資源:PSW、A、R2~R6 堆棧需求: 2字節(jié)
SORT: MOV A,R7
MOV R5,A ;比較次數(shù)初始化
SRT1: CLR F0 ;交換標(biāo)志初始化
MOV A,R5 ;取上遍比較次數(shù)
DEC A ;本遍比上遍減少一次
MOV R5,A ;保存本遍次數(shù)
MOV R2,A ;復(fù)制到計(jì)數(shù)器中
JZ SRT5 ;若為零,排序結(jié)束
MOV A,R0 ;保存數(shù)據(jù)指針
MOV R6,A
SRT2: MOV A,@R0 ;讀取一個(gè)數(shù)據(jù)
MOV R3,A
INC R0 ;指向下一個(gè)數(shù)據(jù)
MOV A,@R0 ;再讀取一個(gè)數(shù)據(jù)
MOV R4,A
CLR C
SUBB A,R3 ;比較兩個(gè)數(shù)據(jù)的大小
JNC SRT4 ;順序正確(增序或相同),不必交換
SETB F0 ;設(shè)立交換標(biāo)志
MOV A,R3 ;將兩個(gè)數(shù)據(jù)交換位置
MOV @R0,A
DEC R0
MOV A,R4
MOV @R0,A
INC R0 ;指向下一個(gè)數(shù)據(jù)
SRT4: DJNZ R2,SRT2 ;完成本遍的比較次數(shù)
MOV A,R6 ;恢復(fù)數(shù)據(jù)首址
MOV R0,A
JB F0,SRT1 ;本遍若進(jìn)行過(guò)交換,則需繼續(xù)排序
SRT5: RET ;排序結(jié)束
END
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -