第3章单片机指令系统讲解.ppt

  1. 1、本文档共57页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MCS-51单片机指令系统有如下特点: (1)指令执行时间快。 (2)指令短,约有一半的指令为单字节指令。 (3)用一条指令即可实现2个一字节的相乘或 相除。 (4)具有丰富的位操作指令。 (5)可直接用传送指令实现端口的输入输出操作。 指令格式 在MCS-51指令中,一般指令主要由操作 码、操作数组成。 指令应具有以下功能: (1)操作码指明执行什么性质和类型的操 作。例如,数的传送、加法、减法等。 (2)操作数指明操作的数本身或者是操作 数所在的地址。 (3)指定操作结果存放的地址。 单字节指令 操作码和操作数在同一个字节中。 双字节指令 前一个字节为操作码,后一个字节为操作数。 三字节指令 前一个字节为操作码,后两个字节为操作数。 指令描述符号介绍 Rn——当前选中的寄存器区中的8个工作寄存器 R0~R7(n=0~7)。 Ri——当前选中的寄存器区中的2个工作寄存器 R0、R1(i=0,1)。 direct—8位的内部数据存储器单元中的地址。 #data——包含在指令中的8位常数。 #data16——包含在指令中的16位常数。 addr16——16位目的地址。 addr11——11位目的地址。 rel —— 8位带符号的偏移字节,简称偏移量。 DPTR—— 数据指针,可用作16位地址寄存器。 bit ——内部RAM或专用寄存器中的直接寻址位。 A —— 累加器。 B —— 专用寄存器,用于乘法和除法指令中。 C —— 进位标志或进位位,或布尔处理机中的 累加器。 @ —— 间址寄存器或基址寄存器的前缀, 如@Ri,@DPTR。 / —— 位操作数的前缀,表示对该位数操作 取反,如/bit。 (×) —— 片内RAM的直接地址。 ((×))—— 由×寻址的单元中的内容。 —— 箭头左边的内容被箭头右边的内 容所代替。 立即寻址 指令中直接给出操作数的寻址方式。立即操作数用前面加有#号的8位或16位数来表示。 例如:MOV A,# 60H ;A←#60H MOV DPTR,# 3400H ;DPTR←#3400H MOV 30H,# 40H ;30H单元←#40H 上述三条指令执行完后,累加器A中数据为立即数据60H,DPTR寄存器中数据为3400H,30H单元中数据为立即数40H。 注意:符号“#”表明其后跟的是立即数, 立即数——就是数字量本身。 直接寻址 指令中直接给出操作数地址的寻址方式,能进行直接寻址的存储空间有SFR寄存器和内部数据RAM。 例如:MOV R1,1FH ;R1 ←(1FH) MOV 30H,4AH ;30H←(4AH) 在本单片机中规定:访问特殊功能寄存器SFR只能采用直接寻址方式。例如: MOV A, SP ; A ←(SP) MOV A, 81H ; A ←(SP) MOV P1, #5AH ; P1←#5AH MOV 90H,#5AH ; P1←#5AH MOV B, 30H ; B ←(30H) 寄存器寻址 以通用寄存器的内容为操作数的寻址方式。通用寄存器指A、B 、DPTR以及R0~R7 。 从寄存器中读取操作数或存放操作数进寄存器 例如:CLR A ;A←0 INC DPTR ;DPTR←(DPTR)+1 ADD R5,#20H ;R5←(R5)+#20H MOV A,B ; A ←(B) MOV 30H,R0 ;30H←(R0) MOV A,R1 ; A ←(R1) 寄存器间接寻址 寄存器中的内容是一个地址,由该地址单元 寻址到所需的操作数。间接寻址的存储器空 间包括内部数据RAM和外部数据RAM。 能用于寄存器间接寻址的寄存器有R0,R1, DPTR,SP。其中R0、R1必须是工作寄存器组 中的寄存器。SP仅用于堆栈操作。 例如:MOV @R0,A;(R0)←(A) 其指令操作过程示意图如图3-1所示。 又如:MOVX A,@R1;A←外部RAM((P2R1)) 其指令操作过程示意图如图3-2所示。 再如:MOVX @DPTR,A;外部RAM(DPTR)←(A) 其指令操作过程示意图如图3-3所示。 变址寻址 变址寻址只能对程序存储器中数据进行操作。由于程序存储器是只读的,因此变址寻址

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档