第三章MCS51系列单片机的指令系统及汇编语言程序设计课件.ppt

第三章MCS51系列单片机的指令系统及汇编语言程序设计课件.ppt

  1. 1、本文档共113页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章MCS51系列单片机的指令系统及汇编语言程序设计课件.ppt

第3章 MCS-51系列单片机的指令系统及汇编语言程序设计 3.1 寻址方式 3.2 指令系统 3.3 汇编语言程序设计 3.4 实用汇编语言程序设计;3.1 寻址方式 3.1.1 立即寻址 3.1.2 直接寻址 3.1.3 寄存器寻址 3.1.4 寄存器间接寻址 3.1.5 变址寻址 3.1.6 相对寻址 3.1.7 位寻址;3.1 寻址方式 MCS-51的基本指令共111条,按指令所占的字节来分: (1) 单字节指令49条,操作码、操作数 同在一个字节中。 (2) 双字节指令45条,操作码+操作数 (3) 三字节指令17条,操作码+操作数+操作数。 按指令的执行时间来分: (1) 1个机器周期(12个时钟振荡周期)指令64条 (2) 2个机器周期(24个时钟振荡周期)指令45条; (3) 只有乘、除两条指令的执行时间为4个机器周期(48个时钟振荡周期)。 指令格式 MCS-51汇编语言指令格式如下: [标号:] 操作码 [操作数] [;注释] 操作码:规定指令进行什么操作 操作数:指令操作的对象 指令系统的寻址方式: 寻址方式就是在指令中说明操作数所在地址的方法。共7种寻址方式。 ;3.1.1 立即寻址 操作数在指令中直接给出,需在操作数前面加前缀 “#”。例如: MOV R0, #58H 16位立即数的存放顺序是高8位在前(低地址单元),低8位在后(高地址单元)。例如, MOV DPTR, #1234H ;3.1.3 寄存器寻址 操作数在寄存器中 寄存器包括A、B、C、DPTR和R0~R7。 例如, DEC A ;累加器A-1→A A、B既可以是寄存器寻址,也可以是直接寻址。累加器A写做ACC时是直接寻址。B在乘除法指令中为寄存器寻址,在其他指令中为直接寻址。 ;3.1.4. 寄存器间接寻址方式 寄存器中存放的是操作数的地址,在寄存器前加前缀标志“@” 。 访问内部RAM或外部RAM的低256个字节时,只能采用R0或R1作为间址寄存器。例如: MOV A,@Ri ;i=0或1 其中Ri中的内容为40H,把内部RAM40H单元内容送A。 寻址范围: (1)访问内部RAM低128个单元,其通用形式为@Ri (2)对外部内部RAM的64K字节的间接寻址,例如: MOVX A,@DPTR;3.1.5 变址寻址 本寻址方式是以DPTR或PC作基址寄存器,以累加器A作为变址寄存器,由DPTR或者PC中的内容与累加器A内容之和形成操??数在程序存储器中的地址。 例如:指令 MOVC A,@A+DPTR 其中A的原有内容为05H,DPTR的内容为0400H,该指令执行的结果是把程序存储器0405H单元的内容传送给A。 ;说明: (1)本寻址方式是专门针对程序存储器的寻址方式,寻址范围可达到64KB。 (2)本寻址方式的指令只有3条: MOVC A,@A+DPTR MOVC A,@A+PC JMP @A+DPTR ;3.1.6 相对寻址 用于转移指令中修改PC的值。在相对寻址的转移指令中,操作数为转移地址的位移量,,以“rel”表示,即把PC的当前值加上偏移量就构成了程序转移的目的地址: 目的地址=源地址+2(或者3)+相对偏移量 偏移量rel是一带符号的8位二进制数补码数 。 范围是:–128 - +127 说明: 本寻址方式是专门针对程序存储器的寻址方式,寻址范围可达到64KB。 ;3.1.7 位寻址 对一个字节中的某一位单独进行操作时这个操作数的地址称为位地址,对位地址寻址简称位寻址。可以进行位寻址的区域有: 寻址范围包括: (1)内部RAM中的位寻址区。 (2)特殊功能寄存器中的可寻址位 ;可寻址位在指令中有如下4种的表示方法: a. 直接使用位地址。例如PSW.5的位地址为0D5H。 b. 位名称的表示方法。例如:PSW.5是F0标志位,可使用F0表示该位。 c.单元地址加位数的表示方法。例如 :(0D0H).5。 d.特殊功能寄存器符号加位数的表示方法。例如:PSW.5。;;1.下列各条指令其源操作数的寻址方式是什么? (1)MOV A,#48H; 寻址方式: 立即数寻址 (2)ADD A,60H; 寻址方式:直接寻址 寄存器寻址 (3)ANL A,@R0;

文档评论(0)

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

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

1亿VIP精品文档

相关文档