- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机原理与应用 第2章 MCS-51单片机指令系统 指令系统概述 指令格式 指令系统的寻址方式 指令系统分类介绍 MCS-51汇编语言的伪指令 指令系统概述 MCS-51单片机指令简单而高效: 从所占存储空间来看,可分为: 单字节指令:49条 双字节指令:45条 三字节指令:17条 + 111 虽然有111条,但是有大量的是换一个存放数据的空间而已,并不难掌握!! 从指令执行需要花的时间来看,可分为: 1个机器周期:64条 2个机器周期:45条 4个机器周期: 2条(乘除法指令) 指令所占空间,决定了能存放程序的大小; 指令执行时间,决定了CPU的处理速度; 了解指令的存储空间大小,有利于我们精简代码;了解指令的执行时间,有利于我们计算各种事件发生在时间上的精密处理. 指令格式 单字节指令: 一个字节,包含了操作码和操作数. 双字节指令: 一个字节是操作码,另一个字节是操作数. 三字节指令: 操作码占一个字节,操作数占两个字节; 操作数可能是数据,也可能是地址. 指令系统的寻址方式 1、立即寻址 指令中直接给出操作数的寻址方式。在51系列单片机的指令系统中,立即数用一个前面加 “#“号的数表示: 8位数(#data,如#30H) 16位数(#data16,如#2052H) 例如指令:MOV A,#30H 2、直接寻址 操作数的地址直接出现在指令中。 寻址对象: ①内部数据存储器:使用它的地址。 ②特殊功能寄存器:既可使用它的地址,也可直接使用寄存器名. 41H 78H 40H 56H 41H 78H 40H 78H 例:MOV A,40H ; A=56H 机器码 E5 40 MOV P0,#45H ;45H→P0, P0为直接寻址的 SFR,其地址为 80H, 机器码为75 80 45 MOV 40H,41H ; 机器码为85 41 40 内部RAM (41H)→(40H) (40H)=(41H)=78H 3、寄存器寻址 操作数存放在寄存器中。 寻址对象:A,B,DPTR,R0~R7 。 B 仅在乘除法指令中为寄存器寻址,在其他指令中为直接寻址。 A 可以寄存器寻址又可以直接寻址,直接寻址时写作ACC MOV A,R0 ;R0→A,A、R0为寄存器寻址,机器码:E8 MUL AB ;A*B→BA,A、B为寄存器寻址,机器码:A4 MOV B,R0 ;R0→B,R0为寄存器寻址,B为直接寻址, 机器码 88 F0,其中 F0为B的字节地址. PUSH ACC ;A的内容压入堆栈 机器码C0 E0 其中E0为A的字节地址. 4、寄存器间址 操作数存放在存储器中,该存储器的地址放在寄存器中,在指令中给出该寄存器。 MOV R0,#20H MOV @R0,A ; A→(20H) 内部 RAM地址 MOVX A,@R1 ;外部RAM(地址为 R1 )的 内容→A MOVX @DPTR,A ;A→外部RAM(以DPTR内容为地址)空间. 5、变址寻址 以DPTR或PC寄存器内容为基地址,和A的内容为相加形成操作数的地址。其中累加器A内容是可变的。 例如:
文档评论(0)