📄 sjpx.asm
字号:
JHBZ BIT 20H
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV R0 ,#50H ;置数据的首地址给R0
MOV R2 ,#07H ;置每轮冒泡的次数
CLR JHBZ ;清除交换标志
LOOP: MOV A ,@R0
MOV 30H ,A ;取前数放到30H单元
INC R0
MOV 31H ,@R0 ;取后数放到31H单元
CLR C
SUBB A ,@R0
JC NEXT ;判断前数是否小于后数,是则跳转到NEXT,否则顺序执行
MOV @R0 ,30H ;前数送到后数所在单元
DEC R0
MOV @R0 ,31H ;后数送到前数所在单元,实现数据交换
INC R0
SETB JHBZ ;置交换标志
NEXT: DJNZ R2 ,LOOP;判断此轮冒泡是否结束
JB JHBZ ,MAIN;判断交换标志是否等于1,是则跳转到MAIN,否则结束排序
HERE: SJMP $
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -