内容正文:
专题七 数据传送类指令与算术运算类指令(教案)-《单片机技术与应用》高教版-专题复习讲练测
[考纲要求]
1.掌握单片机指令格式、寻址方式、数据传送和算术运算指令的基本概念和具体应用。
2.对不同指令格式和寻址方式的理解能力,以及能否根据实际情况选择合适的指令和寻址方式解决问题。
3.能够结合实际案例或程序段,进行指令和寻址方式的分析和应用。
[课时安排]
2课时
[知识梳理]
一、指令与指令系统
(1)指令是使单片机内部执行相应动作的一种操作,是提供给用户编程使用的一种命令。指令的构成由单片机的电子器件特性所决定,单片机只能识别二进制代码,以二进制代码来描述指令功能的语言称为机器语言,由于机器语言不便于人们识别、记忆、理解和使用,因而给机器语言指令赋予助记符号来表示,这就形成了汇编语言。
(2)单片机能够执行的全部操作所对应的指令集合,称为单片机的指令系统。从指令是反映单片机内部操作的角度来看,指令系统全面展示了单片机的操作功能,也就是它的工作原理;从用户使用的角度来看,指令系统是提供给用户使用单片机功能的软件资源。
二、指格式与符号意义
指令系统中的指令描述了不同的操作,不同的操作对应不同的指令。但从组成结构上看每条指令通常由标号、操作码、操作数和注释组成。操作码表示单片机执行该指令将进行何种操作,方括号中的项目是可选的,如标号和注释。
汇编语言指令的格式如下:
[标号:] 操作码助记符[目的操作数][,源操作数]⋯ [;注释]
三、寻址方式的概念
所谓寻址方式,就是 CPU 执行一条指时怎样找到该指所要求的操作数的方式。操作数总是存放在某一存储单元中,找操作数实际就是寻找操作数所在的单元地址,因此称为寻址方式。指令通常由操作码和操作数构成,操作数部分实际上只指出操作数的寻址方式。所以寻址方式是指令的重要组成内容。一般来说,寻址方式越多,单片机的系统就越复杂。
四、7种寻址方式
(1)立即寻址
操作数直接出现在指令中,紧跟在操作码的后面,作为指令的一部分与操作码一起存放在程序存储器中,可以立即得到并执行,不需要经过别的途径去寻找,故称为立即寻址。在汇编指令中,在一个数的前面冠以“#”符号作前缀,就表示该数为立即寻址。
(2)直接寻址
指令中直接给出操作数所在的存储器地址,以供取数或存数的寻址方式称为直接寻址。
例如:MOV A,30H指令中30H 为操作数的地址。
(3)寄存器寻址
在指令选定的某寄存器中存放或读取操作数,以完成指令规定的操作,称为寄存器寻址。
(4)寄存器间接寻址
由指令指出某一寄存器的内容作为操作数地址的寻址方法,称为寄存器间接寻址。这里需要强调的是:寄存器中的内容不是操作数本身,而是操作数的地址,到该地址单元中才能得到操作数。寄存器起地址指针的作用,通常在寄存器前加前缀@ 符号。
(5)变址寻址
基址寄存器加变址寄存器间接寻址,简称变址寻址。它是以数据指针寄存器 DPTR 或 PC作为基址寄存器,累加器 A 作为变址寄存器,两者内容相加的和作为程序存储器地址,再寻址该单元,读取数据。这种寻址方式常用于访问程序存储器中的常数表。
(6)相对寻址
相对寻址是以当前程序计数器 PC 加上指令中给出的偏量 rel 而成实际操作数地址的寻址方法。它用于访问程序存储器,常出现在相对转移指令中。
(7)位寻址
位寻址是在位操作指令中直接给出位操作数的地址,可以对片内 RAM 中的 128 位和特殊功能寄存器 SFR中的93 位进行寻址。
五、数据传送类指令
数据传送类指令有 29 条,是指令系统中使用非常频繁的一类指令,几乎所有的应用程序都要用到这类指令,但这类指令属于“复制”类型,而不是“搬家”。为便于找到规律以理解、记忆指令,对数据传送类指令再进行如下分类:
1、 访问片内数据存储器一般数据传送指令(见表 3-1)
2、 访问片内特殊传送指令 (见表3-2)
六.加法指令(见表 3-5)
七.带借位减法指令 (见表 3-6)
[真题练讲]
1.(2019年山东省统一考试)乘法指令中,乘积的高位保存在?
A. 累加器
B. 特殊寄存器
C. 栈
D. 变址寄存器
答案:A
解析:乘法指令将乘积的高位保存在累加器中,低位保存在另一个寄存器中。
2.(2019年山东省统一考试)加1指令执行后,寄存器的值会?
A. 减少1
B. 增加1
C. 不变
D. 变为0
答案:B
解析:加1指令用于将寄存器的值增加1。
3.(2023年湖南省统一考试)十进制调整指令用于?
A. 将二进制数调整为BCD码
B. 将BCD码转换为二进制数
C. 执行加法运算
D. 执行除法运算
答案:A
解析:十进制调整指令将二进制数调整为BCD码表示的十进制数。
4.(2018年山东省统一考试)在指令格式中,操作码的作用是?
A. 指定操作的数据
B. 指定操作的地址
C. 指定操作的类型
D. 指定操作的寄存器
答案:C
解析:操作码指定指令执行的具体操作类型,如数据传输、算术运算等。
5.(2019年河南省统一考试)直接寻址方式适合于哪种类型的数据访问?
A. 动态分配的数据
B. 存储在固定地址的静态数据
C. 通过寄存器间接访问的数据
D. 通过堆栈访问的数据
答案:B
解析:直接寻址方式适合于存储在固定地址的静态数据访问,因为地址在指令中已经确定。
[限时练讲]
1.指令格式中,指令由以下哪部分组成?
A. 操作码和操作数
B. 操作码和地址
C. 操作数和地址
D. 操作码、操作数和地址
答案:A
解析:指令由操作码和操作数组成,操作码指定操作的类型,操作数指定操作的数据或寄存器。
2.在直接寻址方式中,操作数的地址是通过?
A. 寄存器
B. 指令中的地址字段
C. 变址寄存器
D. 栈
答案:B
解析:直接寻址方式使用指令中的地址字段来指定操作数的地址,适合于静态数据的访问。
3.寄存器间接寻址方式中,操作数的地址存储在?
A. 指令中的地址字段
B. 变址寄存器
C. 一个寄存器中
D. 堆栈
答案:C
解析:寄存器间接寻址方式中,操作数的地址存储在一个寄存器中,通过该寄存器来间接访问数据。
4.变址寻址方式中,地址计算依赖于?
A. 指令中的地址字段
B. 栈指针
C. 基址寄存器和变址寄存器
D. 位地址
答案:C
解析:变址寻址方式使用基址寄存器和变址寄存器来动态计算最终的数据地址。
5.相对寻址方式中,指令中的地址字段表示?
A. 绝对的内存地址
B. 程序计数器的偏移量
C. 寄存器的地址
D. 数据位偏移量
答案:B
解析:相对寻址方式中,指令中的地址字段表示相对于程序计数器的偏移量,用于分支和跳转。
6.数据传送类指令中,用于从一个位置复制数据到另一个位置的指令是?
A. 加法指令
B. MOV指令
C. 乘法指令
D. 加1指令
答案:B
解析:MOV指令是数据传送类指令中最基本的,用于寄存器或内存之间的数据传输。
7.访问片内特殊传送指令通常用于?
A. 与外部设备进行数据交换
B. 读写特殊功能寄存器
C. 执行算术运算
D. 访问缓存
答案:B
解析:特殊传送指令用于读写特殊功能寄存器,如控制寄存器或状态寄存器。
8.变址寻址方式中,基址寄存器和变址寄存器的作用是什么?举例说明。
解析: 变址寻址方式允许基址寄存器存储起始地址,变址寄存器存储偏移量,通过它们的加法或减法来计算最终的数据地址,例如在数组访问时动态计算元素地址。
9.数据传送类指令中,访问片内特殊传送指令与访问片外数据存储器的数据传送指令有何区别?
解析: 访问片内特殊传送指令用于读写特殊功能寄存器,而访问片外数据存储器的指令用于与外部设备进行数据交换,如读写外部存储器或外设寄存器。
10.乘法指令中,为什么需要区分高位和低位乘积?
解析: 乘法指令通常将乘积的高位存储在累加器中,这部分包含了乘积的最高有效位,而低位乘积则保存在另一个寄存器中,以便于大数值的处理和运算。
11.加1指令和减1指令在程序中有什么实际应用?
解析: 加1指令和减1指令用于对计数器或迭代器进行增减操作,是循环和计数程序中常用的指令,可以实现循环控制和条件判断。
12.十进制调整指令为什么在某些应用中比直接的二进制运算更有用?
解析: 十进制调整指令将二进制数调整为BCD码表示的十进制数,适用于需要精确控制和显示数值的场景,如金融和计量设备中的数据处理。
[学法建议]
重点复习知识点:
1. 指令是使单片机内部执行相应动作的一种操作,是提供给用户编程使用的一种命令。
2. 单片机能够执行的全部操作所对应的指令集合,称为单片机的指令系统。
3. 指令系统中的指令描述了不同的操作,不同的操作对应不同的指令。但从组成结构上看每条指令通常由标号、操作码、操作数和注释组成。
4. 寻址方式,就是 CPU 执行一条指时怎样找到该指所要求的操作数的方式。
5. 用于对十进制数 BCD码加法运算结果的内容修正,两个 BCD码相加之后,必须经本指令的调整才能得到正确的结果。
阅读相关教材和课堂笔记,梳理重点知识点和关键概念。制作复习提纲或思维导图,以帮助理清知识框架和内部逻辑。进行练习题和例题的练习,加深对知识的理解和应用。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
$$