アセンブリによる並べ替え
記事ディレクトリ
トピックの言い換え
内部RAMの30Hから始まる10個の符号なし数値を昇順でソートするプログラムを作成します。
問題分析と解決策のアイデア
アセンブリの簡単な実装のためのバブルソート方法
コード
ORG 0000H
MOV 30H,#35H
MOV 31H,#57H
MOV 32H,#65H
MOV 33H,#0FFH
MOV 34H,#01H
MOV 35H,#47H
MOV 36H,#87H
MOV 37H,#0EH
MOV 38H,#55H
MOV 39H,#76H
MAOPAO:MOV R7,#10
CCC:MOV R0,#30H
MOV R1,#31H
MOV R6,#9
BBB:MOV A,@R0
CLR C
SUBB A,@R1
JNC AAA
INC R0
INC R1
DJNZ R6,BBB
DJNZ R7,CCC
LJMP DDD
AAA:ADD A,@R1
XCH A,@R1
XCH A,@R0
INC R0
INC R1
DJNZ R6,BBB
DJNZ R7,CCC
DDD:SJMP $
END