采用冒泡法编写51单片机排序程序
来源:互联网 发布:windows聚焦图片来源 编辑:程序博客网 时间:2024/06/10 21:58
试设计一个子程序,其功能为将(R0)指出的内部RAM中6个单字节正整数按从小到大的次序重新排列。
悬赏分:10 - 解决时间:2010-5-7 22:59
;========================================
最佳答案:
下列程序使用冒泡法排序,经过KEIL仿真测试通过。
ORG 0000H
;------------------------下面先准备6个数字
MOV 40H, #8AH
MOV 41H, #3BH
MOV 42H, #0B9H
MOV 43H, #47H
MOV 44H, #29H
MOV 45H, #0AFH
CALL SORT6 ;调用排序子程序
SJMP $ ;停止,此时可以观察排序结果
;-------------------------------------
SORT6: ;排序子程序
MOV R6, #5 ;6个数字,比较5次
S1:
MOV R0, #40H ;起始地址
MOV B, R6
MOV R7, B
CLR PSW.5 ;交换标志清零
S2:
MOV B, @R0 ;取出前一个数
INC R0
MOV A, @R0 ;取出后一个数
CJNE A, B, S3 ;后-前
S3:
JNC N_JH ;够减就不用交换
MOV @R0, B ;交换存放
DEC R0
MOV @R0, A
INC R0
SETB PSW.5 ;设立交换标志位
N_JH:
DJNZ R7, S2
JNB PSW.5, S_END ;没有交换过,就结束
DJNZ R6, S1
S_END:
RET
;-------------------------------------
END
;========================================
回答者: 做而论道 - 十三级 2010-4-21 00:19
提问者对于答案的评价:谢谢~
原题网址:http://zhidao.baidu.com/question/148407042.html?fr=qrl&cid=865&index=1
- 采用冒泡法编写51单片机排序程序
- c 排序采用递归冒泡法
- 51单片机汇编实现冒泡排序
- 编写程序对N个元素数组,用冒泡排序法进行排序
- 采用单链表进行冒泡排序
- 编写51单片机程序,输出方波,at89s52的单片机
- 编写程序,用冒泡法对10个数排序(由大到小)
- 编写程序,用冒泡法对10个数排序(由小到大)
- 用C#编写的冒泡排序小程序
- 使用java编写的冒泡排序小程序
- php编写冒泡排序
- python编写冒泡排序
- 汇编编写的 冒泡排序
- 编写函数,实现冒泡排序
- [初学python]编写冒泡排序
- 用模板编写冒泡排序
- 冒泡排序程序实现
- 冒泡排序小程序
- 用汇编语言编八路彩灯控制系统(流水灯)
- android自定义checkBox样式
- 计时秒表程序设计
- MCS-51单片机中断测试系统设计
- 处理不确定数据的方法研究
- 采用冒泡法编写51单片机排序程序
- 冬令营成都集训总结
- 单片机播放音乐的基本知识
- Java的数据类型
- 51单片机演奏乐曲的程序
- 有八个开关,按下相应开关显示0—7(或1-8)!
- 如何正确计算多重循环延时程序的延时时间
- 2010年中国文化遗产日主场城市活动在苏州落幕
- mysql 5.6参数列表