当前课程知识点:单片机原理及应用 >  3 指令系统 >  3.18 循环转移指令 >  循环转移指令

返回《单片机原理及应用》慕课在线视频课程列表

循环转移指令在线视频

循环转移指令

下一节:子程序相关指令

返回《单片机原理及应用》慕课在线视频列表

循环转移指令课程教案、知识点、字幕

同学 你好

今天我们将介绍一下循环转移指令

那么循环转移指令的核心指令

是DJNZ 操作数 , rel

该条指令的功能是先把操作数自减一个1

然后判断该操作数是否为零

如果不为零

就会跳转到rel目的地处

如果为零 就不跳转

顺序地执行DJNZ这条指令后面的指令

该条指令常用来编写循环程序

怎么利用这条指令来编写循环程序

我们来看一看例题

例如要求某个程序段循环执行一百次

我们可以这样的来编写程序

首先用指令MOV R2, #100

这条指令我们前面说过是一条传送指令

相当于是把立即数100

这里面的不是100H

也没有H

这个100是一个十进制数

相当于是什么

把十进制数的一百送给寄存器R2保存

也就是R2赋了一个初值 100

这个100就是我们循环的次数

然后我们给出循环的程序段

在这个想要循环执行程序段中的

第一条指令上要加一个标号LOOP

在循环程序段的最后

我们要写上DJNZ R2, LOOP

那么这条指令来控制循环的进行

因为在单片机执行到DJNZ这条指令处

我们说过这条指令

CPU会先把R2的值自减一个1

然后判断R2是否为零

不为零就又跳到LOOP处

继续的重新的执行一遍这个循环程序段

R值如果为零 就不跳

顺序执行后面的程序

由于我们在程序的一开始

利用MOV指令已经把R2赋予了一个初值100

所以在DJNZ指令的控制下

这个循环程序段将反复的执行100次

这就是通过DJNZ这条指令

我们就可以来实现循环程序的编写了

好的

下面的话我们再来看一道例题

设单片机的晶振频率为12兆赫兹

请你编写一段延时程序

延时时间大约是50毫秒的程序

如何来编

在实际应用中

我们经常利用循环程序

来实现延迟程序的编写

因为每条指令都是有固定的执行时间

我们可以通过反复执行一些指令来

达到延时一个规定时间的目的

本例中我们就是利用两条DJNZ指令

设计了一个双循环结构的程序

指令中DJNZ R2 ,$

这个是钱币符号

这个符号表示的是本指令的地址

也就是相当于跳转条件满足时

原地跳

把本指令再执行一次

该条指令构成了一个内循环

而标号LOOP的指令到DJNZ R3,LOOP

构成的就是一个外循环

在双循环体中

我们同学们可以仔细的分析

可以体会一下

外循环会执行一百次

而每执行一次外循环

内循环会执行250次

这样的话我们就可以计算出

程序中每条指令执行的次数

再分别用执行的次数

乘以各条指令的执行时间

就能够算出整个程序的执行时间了

本例中每条MOV指令会用一个机器周期的执行时间

每条DJNZ指令将耗时两个机器周期

每条RET指令也会耗时两个机器周期

我们知道前面说过一个机器周期等于

12个时钟周期

而一个时钟周期等于单片机晶振频率的倒数

我们就可以利用每条指令的执行时间

和他们的执行的次数

利用下面这个公式可以算出

相当于整个双循环程序执行完之后

大概耗时50点303毫秒

也就可以满足我们延时50毫秒的目的

好的

以上我们就主要的介绍了一下

循环程序

循环程序的核心就是DJNZ

我们同学们在后面的程序的编写中

将会经常用到该条指令来实现

循环程序的编写

请同学们下来之后仔细的体会一下

该条指令的功能和用途

好的

今天的课就到这里

同学们再见

单片机原理及应用课程列表:

1 单片机系统概述

-1.1 单片机的名称

--单片机的名称

-1.2 单片机的相关概念

--单片机的相关概念

-1.3 单片机的设计语言及软件

--单片机的设计语言及软件

-1.4 单片机的发展

--单片机的发展

-1.5单片机的应用

--单片机的应用

-1.6 第一单元作业

2 单片机的硬件结构

-2.1 单片机的结构框图

--单片机的结构框图

-2.2 80C51内部结构

--80C51内部结构

-2.3 信号引脚

--信号引脚

-2.4 内部数据存储器RAM

--内部数据存储器RAM

-2.5 特殊功能寄存器

--特殊功能寄存器

-2.6 堆栈

--堆栈

-2.7 内部程序存储器ROM

--内部程序存储器ROM

-2.8 存储器的结构特点

--存储器的结构特点

-2.9 并行输入输出接口电路

--并行输入输出接口电路

-2.10 并口功能与时序

--并口功能与时序

-2.11 工作方式

--工作方式

-2.12 最小应用系统

-- 最小应用系统

-2.13 第二单元作业

3 指令系统

-3.1 指令格式

--指令格式

-3.2 立即寻址与直接寻址

--立即寻址与直接寻址

-3.3 寄存器寻址与寄存器间接寻址

--寄存器寻址与寄存器间接寻址

-3.4 变址间接寻址与位寻址

--变址间接寻址与位寻址

-3.5 内部RAM传送指令

--内部RAM传送指令

-3.6 外部RAM传送指令

--外部RAM传送指令

-3.7 ROM传送指令

--ROM传送指令

-3.8 交换指令

--交换指令

-3.9 堆栈操作指令

--堆栈操作指令

-3.10 传送类指令习题讲解

--传送类指令习题讲解

-3.11 算术运算类指令特点

--算术运算类指令特点

-3.12 加法指令

--加法指令

-3.13 加法习题、减法和乘除指令

--加法习题、减法和乘除指令

-3.14 逻辑运算指令

--逻辑运算指令

-3.15 布尔变量操作指令

--布尔变量操作指令

-3.16 无条件转移指令

--无条件转移指令

-3.17 条件转移指令

--条件转移指令

-3.18 循环转移指令

--循环转移指令

-3.19 子程序相关指令

--子程序相关指令

-3.20 并口访问指令及指令小结

--并口访问指令及指令小结

-3.21 第三单元作业

4 汇编语言程序设计

-4.1 汇编程序约定

--汇编程序约定

-4.2 宏指令

--宏指令

-4.3 汇编控制指令

--汇编控制指令

-4.4 汇编语言程序设计步骤

--汇编语言程序设计步骤

-4.5 顺序程序举例

-- 顺序程序举例

-4.6 单重分支结构

--单重分支结构

-4.7 多重分支结构

--多重分支结构

-4.8 单重循环结构

--单重循环结构

-4.9 计数控制循环程序

--计数控制循环程序

-4.10 特征控制循环程序

-- 特征控制循环程序

-4.11 多重循环程序

--多重循环程序

-4.12 子程序的概念

--子程序的概念

-4.13 子程序设计注意事项

--子程序设计注意事项

-4.14 子程序举例

--子程序举例

-4.15 第四单元作业

5 单片机存储器扩展

-5.1 系统扩展

--系统扩展

-5.2 51单片机扩展方法

--51单片机扩展方法

-5.3 存储器单元位数扩充方法

--存储器单元位数扩充方法

-5.4 存储器容量单元扩充方法

--存储器容量单元扩充方法

-5.5 译码线选法

--译码线选法

-5.6 程序存储器的类型

--程序存储器的类型

-5.7 程序存储器的扩展

--程序存储器的扩展

-5.8 数据存储器的扩展

--数据存储器的扩展

-5.9 存储器综合扩展

--存储器综合扩展

-5.10 单片机存储器系统的特点

-- 单片机存储器系统的特点

-5.11 第五单元作业

6 中断与定时系统

-6.1 中断技术

--中断技术

-6.2 中断优先级及中断系统内部结构

--中断优先级及中断系统内部结构

-6.3 中断控制寄存器及中断响应过程

--中断控制寄存器及中断响应过程

-6.4 中断请求的撤消

--中断请求的撤消

-6.5 外部中断举例

--外部中断举例

-6.6 定时器/计数器

--定时器/计数器

-6.7 定时计数器工作方式及程序编写

--定时计数器工作方式及程序编写

-6.8 定时器举例

--定时器举例

-6.9 第六单元作业

7 I/O扩展及应用

-7.1 并行接口

-- 并行接口

-7.2 并口举例

--并口举例

-7.3 并口扩展芯片

--并口扩展芯片

-7.4 8155连接方式及编程

--8155连接方式及编程

-7.5 键盘接口技术

--键盘接口技术

-7.6 按键处理程序及举例

--按键处理程序及举例

-7.7 键盘扫描子程序

-- 键盘扫描子程序

-7.8 显示接口技术

--显示接口技术

-7.9 多位字符静态显示

--多位字符静态显示

-7.10 多位字符动态显示

--多位字符动态显示

-7.11 第七单元作业

8 单片机实验

-8.1 流水灯控制系统设计

--html

-8.2 数码管显示系统设计

--html

-8.3 按键控制系统设计

--html

-8.4 中断控制系统设计

--html

-8.5 定时计数器系统设计

--html

-8.6 串口通信系统设计

--html

-8.7 汉字显示系统设计

--html

-8.8 单片机烧录方法

--单片机烧录方法

-8.9 第八章作业-作业

循环转移指令笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。