控制转移指令用于控制程序的流向,所控制的范围即为程序存储器区间,MCS-51系列单片机的控制转移指令相对丰富,有可对64kB程序空间地址单元进行访问的长调用、长转移指令,也有可对2kB字节进行访问的绝对调用和绝对转移指令,还有在一页范围内短相对转移及其它无条件转移指令,这些指令的执行一般都不会对标志位有影响。
[1]. 无条件转移指令(4条)
这组指令执行完后,程序就会无条件转移到指令所指向的地址上去。长转移指令访问的程序存储器空间为16地址64kB,绝对转移指令访问的程序存储器空间为11位地址2kB空间。
LJMP addr16 ;addr16→(PC),给程序计数器赋予新值(16位地址)
AJMP addr11 ;(PC)+2→(PC),addr11→(PC10-0)程序计数器赋予新值(11位地址),(PC15-11)不改变
SJMP rel ;(PC)+ 2 + rel→(PC)当前程序计数器先加上2再加上偏移量给程序计数器赋予新值
JMP @A+DPTR ;(A)+ (DPTR)→(PC),累加器所指向地址单元的值加上数据指针的值给程序计数器赋予新值
这几条指令,如果要他细分析的话,区别较大,但初学者时,可以不理会那么多,统统理解成LJMP标号,也就是跳转到一个标号处,但事实上,JMP标号,在前面的例程中我们已接触过,并且也知道如何来使用了,AJMP和SJMP也是一样,那么这几条指令它们的区别何在呢?在于跳转的范围不一样。好比跳远,LJMP一下就能跳64K那么远(当然近了就更没关系了)。而AJMP最多只能跳2K距离,而SJMP则最多只能跳256这么远,原则上,所有用AJMP或SJMP的地方都可以用LJMP来替代。因此在初学者时,需要跳转时可以全用LJMP。
但是在查表时要注意会出错,因为他们的机器周期不一样,取得的数也不一样。
关键字:51单片机 无条件转移指令
引用地址:
51单片机无条件转移指令(4条)
推荐阅读最新更新时间:2024-03-16 15:40
51单片机之IO口扩展——74HC165芯片并行转串行实验
我们都知道通信从大的方面有两种:串行和并行。串行的最大优点是占用总线少,但是传输速率低;并行恰恰相反,占用总线多,传输速率高。市面上有很多这样的芯片,有串入并出的(通俗讲就是 一个一个进,最后一块出来),有并入串出的(相对前者而言)。具体用哪种类型要根据我们得实际情况。比如利用单片机显示数码管单纯的显示一个数码管如果仅仅是为了显示 那么动用单片机一个端口(如P0或P1/P2/P3)那没有什么,当然这里我说的数码管是8段的(如果利用BCD类型 16进制数码管那么只需四个即可)就拿51类型的单片机来说,总共32个I/O口,一般如果不是做太大的工程是完全够用的,但有些时候你会恨单片机怎么不多长几条“腿”,怎么省还是不够用。这个时候就需要
[单片机]
手把手教学51单片机第二课 | 流水灯 蜂鸣器 继电器
crol循环左移函数 1.定义:a=下横杆crol下横杠 (变量x,一次左移位数n) 2.最高位左移变至最低位,次高位变最高位,以此类推。 3.执行顺序:变量先左移 再赋值给a 4.头文件**include intrins.h ** cror循环右移函数 参照循环左移函数,只是方向不同 续流二极管 反向接入二极管,短路感应电动势,从而保护三极管 流水灯蜂鸣器代码 #include reg52.h #include intrins.h //crol函数头文件 #define uint unsigned int #define uchar unsigned char uchar temp; sbit beep=P
[单片机]
MSP430和AT89C51单片机4x4键盘C程序
本程序在一位上显示按键,如果多位显示主程序需要修高为多位显示。本程序软件包括去抖功能,没有注释说明。 #include reg51.h #define uchar unsigned char #define uint unsigned int uint key,i; uchar temp,temp1,ms,buff; uchar tab ={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80, 0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; void delay(ms) { while(ms--) { for(i=0;i 120;i++);
[单片机]
用51单片机实现PS/2键盘的控制
随着单片机的不断发展,PS/2键盘在单片机系统中的应用越来越广泛。PS/2键盘其实只有4个引脚有意义,它们分别是CLOCk(时钟脚)、DATA(数据脚)、+5V(电源脚)和Ground(电源地)。在PS/2键盘与PC机的物理连接上只要保证这4根线一一对应就可以了。PS/2键盘靠PC的PS/2端口提供+5V电源,另外两个脚Clock(时钟脚)和DATA(数据脚)都是集电极开路的,所以必须接大阻值的上拉电阻。它们平时保持高电平,有输出时才被拉到低电平,之后自动上浮到高电平。 1、硬件设计 本电路原理图如下图所示,PS2接口的1脚接P3.4,用来接收串行的键码信号,5脚接P3.3(INTl),是时钟信号,每当5脚
[单片机]
基于51单片机的vs1003 MP3模块原理图
电路原理图如下: 单片机源程序如下: /* * MP3模块测试程序 * * 用途:MP3模块测试程序 * vs1003 的硬件测试程序,主控芯片为STC12LE5A60S2 * 其他的微处理器(带SPI接口的)只需稍加修改即可适用 * 对于不带硬SPI接口的微处理器可以用IO进行SPI的时序模拟 * * 作者 日期 备注 * Huafeng Lin 20010/09/10 新增 * Huafeng Lin 20010/09/10 修改 * */
[单片机]
51单片机定时器工作原理及用法
TMOD : 控制定时器的工作方式。8个bit,高四位 bit 控制 T1,、低四位 bit 控制 T0。因为定时器有4种工作方式;TMOD = 0x00(工作方式0),TMOD = 0x01(工作方式0),TMOD = 0x02(工作方式2),TMOD = 0x03(工作方式3)。以上是控制低4位的,所以是对应着T0。 TR0:T0定时器 使能开关,TR0 = 1,开始工作; =0停止工作。 ET0:T0定时器中断开关,定时时间一到,就会跑去中断程序。ET0=1,中断使能,=0失能。 EA : 中断总开关,你可以想象成电路的总电闸,EA=1,中断使能; =0,中断失能。 TH0,TL0 : T0定时器计数寄存器,组成16
[单片机]
MCS-51单片机嵌入式Internet技术的工作原理简述
实现MCS-51 单片机嵌入式接入Internet 技术。单片机通过ATL8019AS 以太网控制器实现与Internet 的交互。利用开源代码的TCP/IP 协议栈uIP 实现对底层设备的驱动,同时通过uIP 协议的应用程序接口实现各种应用服务。给出了硬件设计图,编写了单片机主程序。应用此技术实现了一个城市中心停车监测系统。 近年来以单片机(Micro Computer Unit,MCU)为代表的嵌入式系统在工业探测系统、智能仪器、安防系统、智能家电和信息家电领域得到了广泛应用。 如果嵌入式系统能够连接到Internet 上,则用户可以方便、快捷、低廉地通过网络进行远程控制、监测和信息传送。Internet 技
[单片机]
采用二维模糊控制器和C8051单片机实现室内自然采光系统的设计
1、 引言 从远古的篝火、油灯到蜡烛、白炽灯,再到今天千家万户的荧光灯,人类已经基本适应了人工光源的室内照明环境。但是由于千万年来的环境影响,自然光仍然是人类最习惯、感觉最舒适的光源,自然采光一直受到建筑师和照明设计师的高度重视。当今社会建筑的节能环保需求更对自然采光照明提出了进一步的要求。《建筑采光设计标准》 中的国家技术经济政策指出: 建筑设计要充分利用天然光,创造良好的光环境。 对室内照明自然采光的研究具有重要的意义: (1) 资料表明,照明用电占整个商业建筑能耗的25 - 40% ,而自然采光在特定的情况下可以节省52% 的照明用电,大大节约了能源。 (2) 相关研究表明,人在自然光条件下工作,可以增加满意度和提高工作
[单片机]