单片机指令系统总结1.docVIP

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

一 寻址方式 一 立即寻址(能够立即找到操作数) 举例:MOV A , #45H MOV Rn ,#01H(工作寄存区R0~R7,字节地址00H~1FH) M0V DPTR , #1FFFH(DPTR没有位地址,只有字节地址,由两个8位特殊寄存器组成,即低8位的DPL和高8位的DPH) MOV direct,#88H (指单片机内部RAM的地址) ADD A,#55H (A和55H相加,结果送回A) SUB A,#01H(A减55H,结果送回A) 一般是双字节:操作码+操作数(立即数,用#表示) 仅有一条指令(MOV DPTR , #data 16)是三字节指令 功能:主要用来对寄存器赋值。操作数直接从程序中取得,速度快。 二 直接寻址(直接给出单元地址) 举例:MOV A , 45H(45H地址的内容送到A) MOV Rn,20H MOV direct,30H MOV @Ri,30H ADD A,20H SUB A,30H 寻址空间:仅内部RAM(指令直接给出参加操作的数的字节地址) 注意:1 direct既可用SFR的实际地址,也可以用SFR的名字符号,通常用后者 2 访问累加器A时,应该用ACC(或者0E0H)表示,以便与寄存器寻址区分。 三 寄存器寻址 举例:MOV A , R3(把R3的内容送到A) 由指令指出一个寄存器的内容作为操作数。寄存器用寄存器名表示。 对象:RO—R7,A , B , DPTR 以及CY。 四 寄存器间接寻址 举例:MOV A , @R0 对象:R0 , R1和堆栈指示器SP及数据指针DPTR。 寻址空间:片内或片外数据存储器 片内:R0 , R1 片外:DPTR 堆栈:SP 注意:在用@R0,@R1对片外RAM的0000H--00FFH单元进行寻址时应先将P2口设置为0输出 五 变址寻址(基址寄存器+变址寄存器间接寻址) 举例:MOVC A , @A+DPTR 作用:常用来访问程序存储器的数据表,即查表指令。 以DPTR存放16位基址时,可指向64K字节存储空间的任何单元。 以PC作为基址,指向PC当前值位起始地址的256个字节范围的任一存储单元 六 相对寻址 举例:JC 18H 寻找指令地址,即寻找下一条要执行指令的地址。 有效地址:D=PC + rel(D为目的地址;PC为源地址;rel为相对地址) 偏移量:相对地址的机器码。disp=rel—b。b为转移指令的长度。 偏移量位一字节二进制补码数,取值为-128—127。 七 位寻址 举例:SETB 3AH 对象:片内RAM的位寻址区和某些可位寻址的特殊功能寄存器 当位地址与直接寻址中字节地址形式完全一样时,由操作码加以区分。 寻址方式 使用变量 寻址空间 立即寻址 程序存储器 直接寻址 片内RAM,SFR 寄存器寻址 R0—R7,A , B ,CY ,DPTR 工作寄存器R0—R7,A , B ,CY ,DPTR 寄存器间接寻址 @R0,@R1,SP 片内RAM低128字节 @R0,@R1,DPTR 片外RAM 变址寻址 A+DPTR , A+PC 程序存储器 相对寻址 PC+rel 程序存储器 位寻址 片内RAM20H—2FH和部分DPTR的位地址空间 二指令系统 共五类 1 数据传送类 2 算术运算类 3 逻辑运算类 4 程序控制类 5 位(布尔)操作类 指令系统共111条指令,单字节49条,双字节46条,三字节14条 按指令执行时间:单机器周期64条,双机器周期45条,四机器周期2条。 一 数据传送类指令 8位数通用传送指令 1 累加器A为目的操作数(4条) MOV A , Rn MOV A , direct MOV A , @Ri MOV A , #data 2 工作寄存器Rn为目的操作数(3条) MOV Rn , A MOV Rn , 6FH MOV Rn , #data 3 直接地址为目的操作数(5条) MOV direct , A MOV direct , Rn MOV direct , direct 源地址在前,目的地址在后 MOV direct , @Ri 目的地址在前,院操作数在后 MOV direct , #data 4 间接地址为目的操作数(3条) MOV @Ri , A MOV @Ri , direct MOV @Ri , #data 16位数目标地址传送

文档评论(0)

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

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

1亿VIP精品文档

相关文档