单片机基本原理及应用系统第3章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 第一节 指令系统概述 一、指令的格式 二、指令系统分类 1.按指令机器码的长度进行分类 2.按指令功能进行分类 (1)数据传送类指令29条 包括向程序存储器以及片内、片外数据存储器传送数据的指令等。 (2)算术运算类指令24条 包括加、减、乘、除以及增量、减量、十进制调整指令等。 (3)逻辑运算类指令24条 包括与、或、异或和移位指令等。 (4)控制转移类指令17条 包括跳转指令、子程序调用与返回指令等。 (5)位操作类指令17条 包括位传送、位逻辑运算、位转移指令等。 第一节 指令系统概述 3.按指令的机器周期进行分类 三、指令助记符中的一些常用符号 第二节 寻 址 方 式 一、立即寻址方式 例3-2-1 MOV A, #0EH 图3-1 MOV A,#0EH执行过程示意图 例3-2-2 MOV DPTR ,#32A1H 二、直接寻址方式 例3-2-3 MOV A, 50H ;(50H)→A 第二节 寻 址 方 式 图3-2 MOV A,50H指令执行过程示意图 1)内部数据存储器的低128个字节单元(00H~FFH)。 2)特殊功能寄存器SFR(特殊功能寄存器只能用直接寻址方式访问)。 3)位地址空间。 第二节 寻 址 方 式 4)在一些程序控制指令中(如LJMP、LCALL等),可采用直接寻址方式提供程序转移的目标地址。 三、寄存器寻址方式 例3-2-4 MOV A,R4 ;(R4)→A 图3-3 MOV A,R4指令执行过程示意图 1)四个工作寄存器组共32个通用寄存器(指令中只能使用当前寄存器 第二节 寻 址 方 式 组)。 2)部分特殊功能寄存器,如A、B、DPTR。 四、寄存器间接寻址方式 例3-2-5 MOV A,@R1 ;((R1))→A 图3-4 MOV A,@R1指令执行过程示意图 1)内部RAM低128B单元,该处只能使用R0、R1作间址寄存器,如上例。 第二节 寻 址 方 式 2)外部RAM64KB,使用DPTR作间址寄存器。 3)在堆栈操作指令(PUSH、POP)中,以堆栈指针SP作间址寄存器,寻址空间为片内RAM。 五、基址加变址寻址方式 例3-2-6 图3-5 MOVC A,@A+PC 执行过程示意图 第二节 寻 址 方 式 1)该寻址只能对程序存储器进行寻址。 2)基址寄存器不同,其寻址范围也不同。 3)采用这种寻址方式的指令只有3条。 六、相对寻址方式 例3-2-7 JC 80H   ;C=1跳转 图3-6 JC 80H(当C=1时)执行过程示意图 第二节 寻 址 方 式 七、位寻址 例3-2-8 CLR 92H   ;0→92H 1)内部RAM中的位寻址区,位寻址范围为20H~2FH中的16个存储单元,每个单元共有8位,共128位,其中每一位都分配一位位地址,分别为00H~7FH。 2)特殊功能寄存器的可寻址位。 第三节 指 令 系 统 一、数据传送指令 1.内部RAM、特殊功能寄存器之间的数据传送指令 (1)以累加器A为目的操作数的指令(4条) 例3-3-1 设(A)=30H,(89H)=2FH,(R1)=45H,(45H)=00H,(R4)=5DH,指令执行后的结果如不做特殊说明均在注释之后,以下同。 (2)以寄存器Rn为目的操作数的指令(3条) 例3-3-2 设所有目的操作数的内容均24H,(25H)=48H,(A)=36H。执行指令: (3)以直接寻址为目的操作数的指令(5条) 例3-3-3 设所有目的操作数的内容均为00H,(79H)=35H,(R0)=79H,(A)=21H,(R3)=5EH。执行指令: (4)以寄存器单元为目的操作数的指令 第三节 指 令 系 统 例3-3-4 设(R0)=45H,(R1)=46H,(73H)=5CH,(A)=92H,执行指令: (5)十六位数据传送指令(1条) 例3-3-5 设(DPTR)=3000H。执行指令; 2.累加器A与外部数据存储器间的传送指令 例3-3-6 设(DPTR)=2000H,RAM(2000H)=06H,(R1)=0F0H,片外RAM(0F0H)=0A0H。顺序执行指令: 例3-3-7 编制程序段,把片外RAM中8400H单元中的数据取出,传送到6000H单元中去。 3.RAM堆栈类操作指令 (1)进栈指令(1条) 例3-3-8 设(SP)=62H,(A)=30H,(B)=70H。顺序执行指令: 第三节 指 令 系 统 (2)出栈指令(1条) 例3-3-9 设(SP)=64H,(64H)=70H,(63H)=30H。顺序执行指令: 例3-3-10 设(SP)=10H,(20H)=2DH,(30H)=48H,编制程序段将内部RAM的20H与30H单元的内容交换。 4.数据交换类指令 (1)字节交换指令(3条)

文档评论(0)

132****9295 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档