第三章_指令系统new.pdf

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

第三章 MCS-51指令系统 MCS-51共有111种指令,其单字节指令49种,双字节 指令47种,三字节指令仅15种。从执行时间看,单周期 指令64种,双周期指令45种。只有乘除2条指令执行时间 为4个机器周期。 一、寻址方式 1、立即寻址 A、操作数包含在指令字节中。 B、例:MOV A,#70H (注意:立即数前面必须有 “#”号) 2、寄存器寻址 A、操作数在某一寄存器中。 B、例:INC R0 3、直接寻址 A、操作数的地址包含在指令字节中。 B、例:MOV A,70H (注意:直接寻址方式只能访问内部RAM单元和SFR) 4、寄存器间接寻址 A、操作数的地址在某一寄存器中。 B、例:ANL A,@R0 (寄存器间址必须带@号) (注意:寄存器间接寻址方式既能访问内部RAM单元 又能访问外部RAM单元) 5、基址寄存器加变址寄存器间接寻址 A、程序存储器某一单元地址为基址寄存器(DPTR或PC) 的内容与变址寄存器(A)的内容之和。 B、例:MOVC A,@A+DPTR 设:DPTR=0400H,A=05H,则执行后将0405H单元 内容送A中。 6、相对寻址 A、操作数为转移地址的位移量,其转移地址=PC当 前值+位移量。 B、例:JC 80H 设指令地址为:1005H, 则转移地址为:1007+FF80=0F87 7、例:分析下面程序,说明源操作数寻址方式及指令执 行结果 MOV R0, #40H MOV A, 40H MOV @R0,#30H MOV DPTR, #2400H MOV P1, R0 MOVX @DPTR, A MOV P2, P1 8、注意:MCS-51具有4个存储器空间(编程逻辑空间)。 程序存储器空间: 0000~FFFFH 内部RAM空间: 00~7FH (含特殊功能寄存器空间: 80~FFH) 位地址空间: 00~FFH 外部RAM/IO空间: 0000~FFFFH 指令对哪一个存储器空间进行操作是由指令的操作 码和寻址方式确定的。 A 、对程序存储器只能采用基址寄存器加变址寄存器间 接寻址方式。 B、特殊功能寄存器只能采用寄存器寻址和直接寻址方 式,不能采用寄存器间接寻址方式。 C、MCS-52单片机内部RAM的高128B(80~FFH)只能采 用寄存器间接寻址方式,不能采用其它方式。 D、位操作指令只能对位寻址区操作。 E、外部扩展的数据存储器只能用MOVX指令访问。 F、内部RAM的低128B(00~7FH)既能用立即寻址,寄存器 寻址,直接寻址,又能用寄存器间接寻址,操作指令 最丰富。 二、专用寄存器 1、程序计数器PC (16位) 存放下一条要执行的指令地址(程序存储器地址) 2、累加器A (8位) 寄存器B (8位)用于乘除指令中,在其他指令中可 作一般RAM单元用。 3、栈指针SP (8位),SP指向栈底 4、数据指针DPTR (16位) DPTR由两个8位寄存器DPH、DPL组成 用来保存16位地址,对外数据存储器可作为间址寄 存器用,对程序存储器可作为基址寄存器用。 【寄存器R0-R7为

文档评论(0)

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

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

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档