51单片机用汇编语言实现数据排序
一、简介:
排序就是按照数的大小按顺序排列。数据排序常用冒泡法。其算法是将一个数与后面的每个数相比较,如果比后面的数大,则交换;如此操作下去将所有的数都比较一遍后,最大的数就会在数列的最后面。然后取第二个数,再进行下一轮比较,再找出第二大数。不断循环,直到全部依序排列。
相关指令和程序:
◆指令 XCH
DEC
SETB、JC、JB
实例:把11个无序数据存于50H~5AH中,然后以从小到大的顺序排列在50H~5AH中。
二、步骤
R3:存放地址数据块的首地址50H
R7:存放数据块的长度。
50H-59H:是用户RAM区是工作寄存器区存放需排序的数据
新建工程名称为SJPX且添加新建文件SJPX.asm。编辑代码以实现实训内容,编译、调试以检验功能是否完成。如下图:
进入调试模式单步运行,MeMory Window窗口可以看到50H-5AH中存放着数据,运行完程序后数据有序的排列。
51单片机针脚排列和定义
针脚排列:
针脚定义:
40个引脚按引脚功能大致可分为4个种类:电源、时钟、控制和I/O引脚。
⒈ 电源:
⑴ VCC - 芯片电源,接+5V;
⑵ VSS - 接地端;
注:用万用表测试单片机引脚电流一般为0v或者5v,这是标准的TTL电平,但有时候在单片机程序正在工作时候测试结果并不是这个值而是介于0v-5v之间,其实这之是万用表反映没这么快而已,在某一个瞬间单片机引脚电流还是保持在0v或者5v的。
⒉ 时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊ 控制线:控制线共有4根,
⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲
① ALE功能:用来锁存P0口送出的低8位地址
② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵ PSEN:外ROM读选通信号。
⑶ RST/VPD:复位/备用电源。
① RST(Reset)功能:复位信号输入端。
② VPD功能:在Vcc掉电情况下,接备用电源。
⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。
① EA功能:内外ROM选择端。
② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋ I/O线:
80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
相关问答
单片机 高手!4.现有10个 数据 (每个 数据 为一个字节),存放在从...[最佳回答]你的应用环境
程序并行性自动识别方法和 数据 并行性利用方法具体是什么?[回答]开机时,程序计算器PC变为0000H。然后单片机在时序电路作用下自动进入执行程序过程。执行过程实际上就是取出指令(取出存储器中事先存放的指令阶段)...
最新最兼容的 单片机 是哪一款?现在常用的单片机还是以前那些型号的单片机,没出现什么功能很强大的新型单片机。不过要说最兼容的一款单片机,应该就是AVR系列的ATmega8515单片机了,该单片机...
单片机 怎么样可以同时执行两个任务?程序要怎么写?把两个程序一块写就好了嘛?什么叫“不同模块的主程序”?如果您的意思是,要在单片机内宏观上“同时”执行两个任务的程序,那么,有很多种办法。其一,道理最简单的,是将这两个任务合理...
51 单片机 有哪两级中断?51单片机有2级中断,分别是高优先级和低优先级中断。可以使得8051单片机可实现两级中断服务程序嵌套,由片内特殊功能寄存器中.如果是同级中断,优先顺序按中断向...
51 单片机 如何实现汉字显示,如“龙”字,能否给程序和电路图?方案一:含字库的液晶,单片机给出相应指令即可显示。效果最好,成本较高,程序量小,难度适中。方案二:点阵液晶或LED点阵,以16*16分辨率,用汉字取模软件取...方...
at89s51 单片机 有多少组?at89s51单片机有4组。AT89S51有PDIP、PLCC、TQFP三种封装方式,其中最常见的就是采用40Pin封装的双列直接PDIP封装。芯片共有40个引脚,引脚的排列顺序为从靠...
stc15和stc51可以替换吗?最小系统板是不能通用的。因为STC51系列与STC15系列的引脚是不同的,特别是电源引脚VCC和GND位置不同。要用STC15系列,再买一个STC15系列的最小系统板吧。最小...
51 单片机 代码能用于stc15系列吗?完全可以用,后者功能更多,速度更快,但管脚排列不同。与外部设备通讯的时序需要调整。STC15W4K32S4系列单片机可直接通过电脑USB接口进行ISP下载编程,集成了...
大虾们, 单片机 电路图中16脚的排阻(含8个电阻)能用9脚的排阻(...[最佳回答]不能,16脚的排阻和9脚的排阻内部电阻的排列不同.