- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机原理实验之循环程序实验——五个数的排序
PAGE
PAGE 6
计算机硬件实验室实验报告
课程名称:单片机原理与接口技术
姓 名学 号班 级成 绩设备名称及软件环境Windows XP操作系统 Medwin仿真器 实验名称循环程序实验——五个数的排序实验日期实验内容
1.实现内存数据访问;
2.用直接选择排序和冒泡排序两种方法实现对五个字节从大到小的排序。理论分析或算法分析
本次实验中的五个数据放在以30H为首地址的Data里(30H~34H),将五个数据的从大到小排序,其对应的地址为(30H~34H)里。
选择排序:
每一趟在待排序的数据记录里出最大值的地址,然后将这个地址里的内容依次放在已排序记录序列后面的地址里,同时将后面地址里内容放在原最大值的地址里,直至数据都按此类排序。
如 23 45 56 12 35
第一次:56 [45 23 12 35]
第二次:56 45 [23 12 35]
第三次:56 45 35 [12 23]
第四次:56 45 35 23 12
冒泡排序:
1)比较相邻的元素。如果第一个比第二个小,就交换他们两个。
2)对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最小的数。
3)针对所有的元素重复以上的步骤,除了最后一个。
4)持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
如: 07 19 06 21 65
第一次: [19 07 21 65] 06
第二次: [19 21 65] 07 06
第三次: [21 65] 19 07 06
第四次: 65 21 19 07 06
三.实现方法(含实现思路、程序流程图、实验电路图和源程序列表等)
基本要求源代码, 扩展要求关键代码
2\冒泡排序代码:
mov r4,#35h
mov r2,#5
SORT: dec r4
dec r2
mov a,r2
jz jieshu
mov r0,#30h
mov r1,0
mov r6,0
mov r7,1
loop1: mov a,@r0
mov r3,a
mov r1,0
loop2: mov a,r3
inc r1
mov r7,1
mov b,@r1
cjne a,b,l1
sjmp l2
l1: jc l2
inc r0
mov r6,0
xch a,b
mov r3,a
mov a,r1
1、选择排序代码:
SORT: mov r7,#4
mov r0,#30h
loop1: mov r6,7
mov a,@r0
mov r1,0
loop2: inc R1
mov b,@r1
cjne a,b,l1
sjmp l2
l1: jnc l2
mov a,b
mov b,r1
mov r4,b
l2:
djnz r6,loop2
xch a,@r0
mov b,r4
mov r1,b
mov @r1,a
inc r0
mov b,r0
mov r4,b
dJnz r7,loop1
sjmp $
end
xrl a,r4
jnz loop2
sjmp SORT
l2: mov r3,a
mov a,b
xch a,@r0
mov @r1,a
inc r0
mov a,r0
xrl a,r4
jnz loop2
sjmp SORT
jieshu: sjmp $
end
初始化设置五个数放在数据Data区中 30H~34H中,如下图:
四.实验结果分析(含执行结果验证、输出显示信息、图形、调试过程中所遇的问题及处理方法等)
初始化数据:21 65 18 70 81
1、直接选择排序
第一次:81 65 18 70 21
第二次:81 70 18 65 21
第三次:81 70 65 18 21
第四次:81 70 65 21 18
即完成直接选择排序。
2、冒泡排序
第一次:65 21 70 81 18
第二次:65 70 81 21 18
第三次:70 81 65 21 18
第四次: 81 70 65 21 18
即完成冒泡排序。
五.结论
本次实验完成了用选择排序法和冒泡排序法的五个数的排序,在排序完成时跳出程序。灵活应用了比较、循环和跳转,将实验跟理论相结合,加深了对知识的理解。
报告提交日期
您可能关注的文档
- Hoval—贝龙锅炉.ppt
- 砌体结构—受压构件.ppt
- 第7章 经济管理中的计算机应用——最优化模型.ppt
- 课件——1.1 初级阶段的社会主义(第一课时).ppt
- 精品报告——柳州荣和天誉前期报告.ppt
- 框架结构——竖向荷载例题.pptx
- 北京培训中心—两虫全流程.ppt
- 放射化学—色谱法.ppt
- 终极版·课件:如何与自己和谐相处——你是....ppt
- 《西游记》81难.doc
- 考试数量关系测验题型及解题技巧—数字推理题(下).doc
- 200米—普招体育专业招生测试专项技术测试方法和评分标准.doc
- 旅游客源国概况——巴西.ppt
- 北京市西城区2012—2013年 高一第二学期数学期末测试.doc
- 太原五中2014—2015学年度第二学期阶段检测高三数学(理)+答案.doc
- 角度测量习题库及答案.doc
- 多样的统一——居住空间中的设计元素.ppt
- 2014—2015学年度下学期海南省白莲中学七年级数学(下册)第二次月考试题+(第六章)++word版无答案.doc
- 数据结构模拟试卷(含答案).doc
- 健康北京人——全民健康促进十年行动规划(2009-2018年).docx
文档评论(0)