第2章 指令系统及汇编语言程序设计(1).pptVIP

第2章 指令系统及汇编语言程序设计(1).ppt

  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文档。上传文档
查看更多
2 指令系统及汇编语言程序设计 教学目的 熟悉单片机的寻址方式 掌握指令系统中的常用指令的用法 了解汇编语言伪指令及其用法 熟悉汇编语言程序的三种基本结构 本章内容 寻址方式 指令系统 汇编语言指令格式 汇编语言程序设计概述 指令系统 分类(*): 指令构成:OP D MCS-51根据其指令编码长短的不同有单、双、三字节指令。 1、单字节指令 1)8位全表示操作码NOP 例:NOP机器码为00H 2)8位又有操作码,又有寄存器编码 例: MOV A , Rn ; 11101…. 2、双字节指令(*) 指令编码占两个字节,第一个为操作码,第二个为操作数 例:MOV A , #85H ;机器码为:第一字节 74H,第二字节为85H 3、三字节指令(*) 第一字节为操作码,第二字节为第一操作数,第三个字节为第二操作数 例:MOV direct , #DATA MOV 78H , #80H 第一字节:75H,第二字节:78H,第三字节:80H 书写格式(*): 标号: 操作码 操作数 ; 注释 标号—第一个字母不能为数字,字母个数不能多于6个。且须用大写英文字母开始。标号可有可无,若有,则代表该指令第一个字节所存放的存储器单元的地址。所以标号又称为符号地址,汇编时把该地址赋值给标号。 操作数—可有0~3个,若操作数以字母开头,则前面应加0。多个操作数之间用“,”隔开 。 2.1 寻址方式(寻找操作数的方式) 1、立即寻址 MOV A, #6FH ; A=6FH,双字节指令,op为74H,数为6FH,两者相跟放在程序存储器中。 MOV DPTR, #1234H ; DPTR=1234H 三字节指令 注:立即数用#data表示 寻址空间:程序存贮器 2、直接寻址(*) 指令中含有操作数的直接地址,该地址指出了参与操作的数据所在的字节地址或位地址。 此方式中操作数存储空间有三种: 1)内部数据存储器的低128个字节单元(00H~7FH) MOV A, 4FH; A=(4FH) 二字节 2)位地址空间(*) MOV C , 00H ; C的位地址为D7H 3)专用功能寄存器(只能用直接寻址方式访问,专用功能寄存器有专门的地址,寄存器名仅是一个代号,给其送数,其实是给一个地址送数) MOV A, P0 MOV IE , #85H 寻址空间:内部RAM低128字节,SFR 3、寄存器寻址 指令指出某一个寄存器中的内容为操作数,指令的操作码中包含了参加操作的寄存器的编号 MOV A, R0; A=(R0) ADD A,R0; A=(A)+(R0) INC R0 寻址空间:R0~R7,A,B,C, DPTR, AB(乘除法),其R0~R7由操作码低三位的8种组合表示, A,B,C, DPTR则隐含在操作码中 4、寄存器间接寻址(*) 1)访问片内RAM或片外的某页256字节空间时,可用R0,R1作为间址寄存器。此类指令为单字节指令,操作码的最低位表示是采用R0还是R1 MOV A, @R1 ; A=((R1)) 若(R1)=40H, 则A=(40H) MOV 60H, #3BH MOV R0 , #60H MOV A,@R0 则(A)=3BH MOVX A, @R0; A=((R0)) 外部数据存储器 External——MOV P2,#10H P2 放高8位地址 内部RAM的80H-FFH高128个字节与SFR地址是重叠的,即高128字节的RAM和SFR地址相同,但物理上分开,究竟是访问谁,用寻址方式区分。 直接寻址方式访问SFR 间接寻址访问高128字节的RAM 例如: MOV 0A0H, #data ; 访问SFR中的0A0H,即P2口 MOV @R0, #data ; 若R0的内容为0A0H,则访问地址 为0A0H的数据单元,而不是访问P2口 注:堆栈操作也是间接寻址方式,所以高128字节数据RAM也可以作为堆栈区使用 2)访问片外RAM时,可用DPTR作间址寄存器,它为16位,可以访问片外整个64K的地址空间。 MOVX A, @DPTR; A=((DPTR)) 寻址空间:内部RAM(@R0, @R1, @SP);

文档评论(0)

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

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

1亿VIP精品文档

相关文档