单片机冒泡.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机冒泡.doc

1、绪论 单片机具有显著的优点,它已成为科技领域的有力工具,人类生活的得力助手。它的应用遍及各个领域综合所述,单片机已成为计算机发展和应用的一个重要方面。另一方面,单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。把一批数据想象成纵向排列,自下而上比较相邻的两个数据元素,如果这两个数据元素的大小顺序符合要求,则保持原样,否则交换它们的位置。这样比较一轮后,最小的数据元素就象气泡一样浮到最顶上,故称冒泡算法。 实际编程设计时,每一轮操作都从数据区的首地址开始,向末端推进。N个数据元素一般要进行N-1次轮次比较、交换排序,但如果操作过程中没有出现位置交换,则说明数据已经有序,可以提前结束排序。待排序数据N=,需要排序处理N-1=次。外循环次。第一个数据不用排序,从第二个数据开始,每取一个数据都要和已经排序的数据进行比较,然后确定位置插入。已经排序的数据个数为X,所以内循环比较次数为X。 先确定位置,然后在寻找应该占用这个位置的对象,这就是选择排序算法。假设要将N个无序数据按增序进行排序,首先确定第一个位置(地址),然后寻找数据对象,在N个无序数据中找到最小数据,放在第一个位置。假设最小值占有第k个位置,则将它搬到第一个位置上,然后将原来占有第一个位置的数据元素存放到空出的第k个位置,即和应该占有这个位置的元素交换位置。最后一个数据就是经过N-1次选择后剩下的数据,肯定是全部数据中的最大值,理所当然占有最后一个位置。 ? ? 选择排序算法主要是进行最小值的选择,这是通过一系列的比较实现的,不需要进行位置移动,故在数据元素的结构比较大(多字节)的情况下具有较高的效率冒泡排序 ? 在选择排序中利用了交换操作来达到排序目的,N个数据最多进行N-1次交换,但每次交换前要进行大量的比较操作来确定交换对象,比较的次数远大于交换的次数,工作量较大。当数据规模较小时,采用冒泡排序法将具有较高的效率。 冒泡排序法把一批数据想象成纵向排列,自下而上比较相邻的两个数据元素,如果这两个数据元素的大小顺序符合要求,则保持原样,否则交换它们的位置。这样比较一轮后,最小的数据元素就象气泡一样浮到最顶上,故称冒泡算法。 实际编程设计时,每一轮操作都从数据区的首地址开始,向末端推进。N个数据元素一般要进行N-1次轮次比较、交换排序,但如果操作过程中没有出现位置交换,则说明数据已经有序,可以提前结束排序。? 三种算法中,如果数据元素规模较大(多字节)时,采用选择排序算法;如果数据元素为单字节时,可采用插入排序或冒泡排序算法;如果数据元素初始状态基本有序,采用冒泡算法较为有效。 图 2 UCC:供电电压。  GND:接地。  P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。 P1口: P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。 P2口:P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。 P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。  RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。  ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。  PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。  EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为R

文档评论(0)

000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档