MCS单片机综合应用.pptVIP

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MCS单片机综合应用

3.1.1 指令系统概述 一字节指令(49条) 只有一个字节,操作码和操作数信息同在其中。 例:INC DPTR 其功能为数据指针加1,指令码为: 3.1.3 MCS-51单片机寻址方式 寄存器寻址方式 直接寻址方式 寄存器间接寻址方式 立即寻址方式 变址寻址方式 位寻址方式 相对寻址方式 1)寄存器寻址方式 以通用寄存器的内容为操作数的寻址方式。 例如: MOV A,R0 2)直接寻址方式 指令中直接给出操作数地址的寻址方式。直接寻址方式使用的是8位二进制数表示的地址,寻址范围只限于内部RAM。 直接寻址方式的寻址范围包括: 低128单元 例如: MOV A,3AH 3)寄存器间接寻址方式 寄存器中存放的内容为地址,以该地址中的内容作为操作数的寻址方式。在寄存器间接寻址方式中,应在寄存器的名称前面加前缀标志“@”。 间接寻址方式的寻址范围包括: 内部RAM低128B,使用R0或R1作间址寄存器,其通用形式为@Ri(i=0或1); 例如: MOV A,@R0 外部RAM64KB,使用DPTR作间接寄存器,其形式为@DPTR; 外部RAM低256B,可以使用R0或R1作间接寄存器寻址,其形式为@ Ri(i=0或1); 例如:MOVX A,@DPTR MOVX A,@R0 4)立即寻址方式 指令中直接给出操作数的寻址方式。 为了与直接寻址指令中的直接地址相区别,立即数用前面加有#号的8位或16位数来表示。 例如:MOV A,# 60H ;A←#60H MOV DPTR,# 3400H ;DPTR←#3400H MOV 30H,# 40H ;30H单元←#40H 上述三条指令执行完后,累加器A中数据为立即数据60H, DPTR寄存器中数据为3400H,30H单元中数据为立即数40H。 5)变址寻址方式 变址寻址只能对程序存储器中数据进行操作,所以寻址范围可达64KB。由于程序存储器是只读的,因此变址寻址只有读操作而无写操作,在指令符号上采用MOVC的形式。 变址寻址是以DPTR或PC作基址寄存器,以累加器A作变址寄存器,并以两者内容相加形成的16位地址作为操作数地址。 变址寻址的指令只有3条: MOVC A,@A+DPTR MOVC A,@A+PC JMP @A+DPTR 变址寻址的指令都是一字节指令。 6)位寻址方式 位寻址指令中直接使用位地址,常用的位寄存器有C。 位寻址只能对有位地址的单元作位寻址操作。 寻址范围包括: 1)内部RAM中的位寻址区 单元地址为20H~27H,共16个单元128位,位地址是00H~7FH 例如: SETB 10H;将10H位置1 若22H单元中存放着数据40H,22H单元的D0位的位地址为 10H,执行上述指令后(22H)=41H。 2)专用寄存器的可寻址位 可供位寻址的专用寄存器共有11个。 例如:CLR PSW.5; 7)相对寻址方式 相对寻址用于修改PC值,主要用于实现程序的分支转移。 以当前程序计数器PC的内容为基础,加上指令给出的一字节补码数(偏移量rel)形成新的PC值的寻址方式。 目的地址=转移指令地址+转移指令字节数+rel 例如: SJMP 08H ;PC←PC+2+08H 3.1.4 MCS-51单片机寻址方式小结 3.2.1 指令格式中符号意义 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——专用寄存器,用于乘法和

文档评论(0)

118books + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档