当前课程知识点:单片机原理及应用 >  3 指令系统 >  3.14 逻辑运算指令 >  逻辑运算指令

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

逻辑运算指令在线视频

逻辑运算指令

下一节:布尔变量操作指令

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

逻辑运算指令课程教案、知识点、字幕

同学

你好

今天我们将学习51单片机的逻辑运算指令

我们先来看一看几个单操作数的指令

请特别注意

单操作数逻辑运算指令的操作数

只能是累加器A

我们看看这条指令CLR A

A该指令的功能是把累加器A的内容清零

而指令CPL A的功能是把累加器A的内容

按位来进行取反

这是单操作数的清零和取反的指令

我们再来看一看

循环移位指令

首先看一下指令RL A

该指令实际上是Rotate LEFT

就是循环左移

实现累加器A的内容循环左移

如图所示

就是把累加器A里面的八位二进制数循环左移一位

注意最高位将移到累加器A的最低位

而指令RR A的功能是

是实现累加器A的数据循环右移一位

注意这个时候将把累加器A的最低位

移动到最高位

而指令RLC A

注意一下这个时候指令带了一个C

就表示的是带进位位的循环左移

同学们可以看这边PPT的图形

它是什么

它是把累加器A的最高位

首先移到进位标志位Cy

然后进位位移动到累加器A的最低位

这就是带进位位的循环左移

下面再来看一下指令RRC A

它的功能由于名字中带了一个C

所以它的功能就是带进位的循环右移

那么这条指令是把累加器A的最低位

移到进位标志位Cy

然后再把进位标志位Cy的内容

移到累加器A的最高位

如此来实现带进位位的循环右移

好的

了解了这些指令之后

下面我们来看一道例题

设累加器A的内容是00101011B

这个B表示的是bit二进制数

进位标志位Cy里面的值是1

分别执行下列单条指令后

请问累加器A的内容是多少

Cy的内容是多少

下面我们就根据每条指令的功能来分析一下

指令运行完之后

相关的累加器A和Cy的内容是多少

第一条指令CPL A

是把累加器A的内容按位取反

不会影响Cy标志位的状态

所以该条指令执行完之后

累加器A的内容就是11010100

Cy的内容为1不变

下面我们再来看一下第二条指令RL A

这条指令是实现把累加器A的内容循环左移一位

所以如果原来累加器A的内容是00101001

那么这条指令执行完之后

累加器A的内容就变成了

01010110

并且不会改变进位标志位Cy内容

所以Cy里面的内容依然是1

再来看一下第三条指令RLC A

这条指令是带进位位的循环左移

所以把累加器A的内容再循环左移的时候

那么A的最高位0会移到Cy中

Cy里面的内容会移到累加器A的最低位

因此该条指令执行完之后

由于原来A的内容是00101011

而Cy的内容原来是1

所以该条指令执行完之后

累加器A内容就是01010111

Cy内容是0

下面我们再来看一看双操作数的逻辑运算指令

前面的几条指令操作数只有一个

并且只能是累加器A

所以称作是单操作数指令

下面的指令

它里面的操作数是两个

双操作数指令有ANL

实现逻辑与

还有ORL是实现逻辑或

还有就是XRL这个是实现操作数的逻辑异或

我们可以通过一道例题来说明一下

这三个指令的具体功能

我们看一看

首先我们假设累加器A的内容是10XXXXXX

这里面的X表示

该位可以是0也可以是1

是属于不定的状态

如果说累加器A内容原来是10XXXXXX

我们先来看第一条指令

是XRL A , #0C0H

XRL这条指令是

实现两个操作数的按位来进行异或

就是将A的数据与C0H按位来相异或

注意某位和1异或相当于该位取反

某位和零相异或

相当于该位保持不变

所以该条指令相当于将累加器A的内容的

第七和第六位取反

下面再来看这条指令

ORL A , #03H

这条指令是将A的数据与03H按位相或

也要注意一下

某位和1或 表示把该位置一

某位和0或 相当于是把这个位保持不变

所以该条指令相当于将累加器A的内容

第一和第零位置一

我们再来看一下

指令ANL A , # 0F3H

这条指令它是将累加器A的数据

与F3H按位相与

注意某位如果与1相与

相当于该位保持不变

而与0相与 表示把该位清零

所以该条指令相当于将类加器A的内容的

第三和第二位清零

据此我们可以判断出

执行这三条指令之后

累加器A的内容就变成了

01XX0011B

那么今天我们就主要介绍了

几条单操作数的逻辑运算指令

和双操作数的逻辑运算指令

请同学们下去之后

仔细的体会这几条指令的功能

今天的课就到这里

同学们再见

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

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 第八章作业-作业

逻辑运算指令笔记与讨论

也许你还感兴趣的课程:

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