内容正文:
第三章 MCS-51 系列单片机指令系统
3.3 数据传送类指令
《单片机技术与应用》 高教版 第二版 魏寿明
CONTENTS
目录
01
学习目标
02
新课引入
03
新课教学
04
师生互动
05
课堂练习
06
课堂小结
学习目标
CATALOGUE
一
掌握数据传送类指令的原理
学会编写简单的数据传送程序
理解数据传送在计算机中的作用
学习目标
新课引入
CATALOGUE
二
数据传送在生活中有许多应用,以下是一些常见的例子:
01 互联网通信:数据传送是互联网的基础,通过网络传输数据可以实现电子邮件、即时通讯、社交媒体、在线购物等各种在线服务。
02 移动通信:手机和其他移动设备通过无线网络进行数据传送,实现语音通话、短信、视频通话、移动应用等功能。
03 电子支付:通过数据传送,可以实现电子支付,如银行转账、支付宝、微信支付等,方便快捷地完成交易。
04 电子邮件:通过电子邮件,人们可以发送和接收包含文本、图片、附件等各种形式的信息,实现远程沟通和文件传输。
数据传送的应用场景
新课教学
CATALOGUE
三
数据传送指令是计算机指令系统中的一类指令,用于在计算机中实现数据的传输和移动。
定义
数据传送指令的主要功能是将数据从内存的一个位置移动到另一个位置,或者在寄存器之间传输数据。
功能
数据传送指令的定义和功能
数据传送类指令有29条,是指令系统中使用非常频繁的一类指令,几乎所有的应用程序 都要用到这类指令。
但这类指令属于“复制”类型,而不是“搬家”。为便于找到规律以理 解、记忆指令,对数据传送类指令再进行分类。
数据传送类指令
01 访问片内数据存储器的一般数据传送指令
01 访问片内数据存储器的一般数据传送指令
例:设内部 RAM(30H)=40H,(40H)=10H,(10H)=00H,(P1)=0CAH, 程序执行后各单元及寄存器、P2 口的内容。
执行上述指令后的结果为:
(R0)=30H,(R1)=(A)=40H,(B)=10H,(40H)=(P1)= (P2)=0CAH,(10H)=20H。
02 访问片内特殊传送指令
(1)堆栈操作指令
堆栈操作分为进栈和出栈,即压入和弹出数据,常用于保存或恢复现场。进栈指令用于保 存 片 内RAM 单元(低128字节)或特殊功能寄存器 SFR 的内容;出栈指令用于恢复片内 RAM单元(低128字节)或特殊功能寄存器 SFR 的内容。
(2)数据交换指令
一般数据传送指令是将操作数自源地址单元传送到目的地址单元,指令执行后,源地址单 元的操作数不变,目的地址单元的操作数则修改为源地址单元的操作数。数据交换指令进行数 据双向传送,涉及传送的双方互为源地址、目的地址,指令执行后每方的操作数都修改为另一 方的操作数。因此,两个操作数均未丢失。
02 访问片内特殊传送指令
02 访问片内特殊传送指令
例:设 (RO)=30H,(30H)=4AH,(A)=28H,则以下程序结果为:
执行XCH A,@RO 后 ,(A)=4AH,(30H)=28H。
执行XCHD A,@RO后 ,(A)=2AH,(30H)=48H。
执行SWAP A后 ,(A)=82H。
02 访问片内特殊传送指令
例:试求下列程序依次运行后有关单元的内容。已知(20H)=24H,(24H)=0BCH,SP=1FH,(1FH)=39H,(39H)=67H,外部RAM(1000H)=10H,ROM(1010H)=OFFH。
MOV A,1FH
MOV R0,20H
XCH A,39H
PUSH ACC
MOV DPTR,#1000H
MOVX A,@DPTR
MOVC A,@A+DPTR
XCHD A,@RO
POP 1FH
运行结果为: (A)=0FCH,(RO)=24H,(1FH)=67H,(20H)=67H,(24H)=OBFH,
(39H)=39H, 其余不变。
03 访问片外数据存储器的数据传送指令
MCS-51 系列单片机 CPU 对片外扩展的数据存储器RAM或 I/O 口进行数据传送时,必须 采用寄存器间接寻址的方法,通过累加器A 来完成。
03 访问片外数据存储器的数据传送指令
例:设外部 RAM(0203H)=OFFH,分析以下指令执行后的结果。
执行结果为: (DPTR)=0203H,(30H)=0FFH,(0203H)=(A)=OFH。
03 访问片外数据存储器的数据传送指令
例:将外部 RAM2000H 中的内容,传送到内部 RAM30H 中。
04 访问程序存储器的数据传送指令
访问程序存储器的数据传送指令又称查表指令,采用基址寄存器加变址寄存器间接寻址方式,把程序存储器中存放的表格数据读出,