单片机原理及接口技术第3章 AT89C51指令系统.pptVIP

单片机原理及接口技术第3章 AT89C51指令系统.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文档。上传文档
查看更多
单片机原理及接口技术第3章 AT89C51指令系统

第3章 AT89C51指令系统 3.1 指令系统简介 3.2 寻址方式 3.3 AT89C51指令系统 3.4 实验 习题与思考题 3.1 指令系统简介 AT89C51单片机共有111条指令。其中,单字节指令49条,双字节指令45条,三字节指令17条。在111条指令中,有64条是单机器周期指令,45条双机器周期指令,两条四机器周期指令。计算机执行指令时间的长短并不取决于指令所占存储器的字节数,而是取决于所占用的机器周期数。 3.2 寻 址 方 式 3.2.1 符号注释 在以后章节的学习过程中,经常用到一些符号,下面逐一介绍。 (1) Rn(n=0~7):表示八个通用寄存器R0~R7。 (2) Ri(i=0,1):表示两个寄存器R0、R1,它们常在间接寻址中作为8位地址指针。 (3) #DATA:表示8位立即数,即包含在指令中的8位常数,如#30或。 (4) #DATA 16:表示16位立即数,即包含在指令中的16位常数,如#2010H。 (5) direct:表示片内RAM(含特殊功能寄存器)的直接地址。 (6) addr11:表示11位目的地址。 (7) addr16:表示16位目的地址。 (8) rel:表示带符号的8位地址偏移量。 (9) bit:表示位地址。 (10) @:作为寄存器的前缀,表示间接寻址。 (11) (×):表示×中内容。 (12) ((×)):表示×所指地址单元的内容。 (13) →:表示将箭头左边内容送入箭头右边。 3.2.2 寻址方式 1. 立即数寻址 立即数寻址是指操作数作为指令的一部分存放在程序存储器中,在取指令运行的同时,直接获得该操作数。这类操作数可以是一字节或两字节操作数,应用时应在操作数前面加“#”号,以区别直接地址。 2.直接寻址 直接寻址是指在指令中直接给出操作数所在存储单元的地址。执行指令时,从该地址中直接获取操作数。 在AT89C51中,可直接寻址的单元为内部RAM低128个字节和所有的特殊功能寄存器。对于特殊功能寄存器,既可以使用名字,也可以使用地址。但一般程序设计中都建议使用名字,以便于程序的阅读和理解。 3.寄存器寻址 寄存器寻址是指把寄存器的内容作为操作数。寄存器可以是通用寄存器R0~R7,也可以是ACC、B、DPTR等寄存器。 4.寄存器间接寻址 在寄存器间接寻址中,指令中的一个操作数是加了前缀“@”的寄存器,“@”表示该寄存器中的内容是操作数的地址。执行指令时,计算机根据这个地址取出操作数完成相应的操作,这种寻址方式称作寄存器间接寻址。在AT89C51中,可用于间接寻址的寄存器是R0、R1、DPTR。其中,R0和R1用于8位地址寻址,DPTR用于16位地址寻址。 5.变址寻址(基址寄存器+变址寄存器) 变址寻址是指以寄存器的内容作为基地址,然后在这个基地址的基础上加上地址偏移量形成操作数的地址,并在这个地址中取出操作数。在变址寻址中只能用DPTR和PC作为基址寄存器,累加器A作为偏移量寄存器。变址寻址用于读取程序存储器的数据,常用于查表操作。 例如执行“MOVC A,@A+DPTR”指令时,用累加器A的内容加上DPTR的内容作为一个地址,然后从这个地址中取出操作数送入累加器中。设累加器A的内容为20H,DPTR的值为2000H,程序存储器2020H单元内容为47H,则执行该指令后累加器A的值为47H。其示意图如图3-3所示。 6.相对寻址 相对寻址是将程序计数器PC中的当前值与指令第二字节给出的偏移量相加,其结果作为跳转指令的转移地址。相对寻址主要用于转移类指令,寻址范围是程序存储器。 7.位寻址 位寻址是指指令的操作数为8位二进制数的某一位,指令中给出的是操作数的位地址。可用于位寻址的区域是片内RAM 20H~2FH单元和部分特殊功能寄存器(见表2-4)。 3.3 AT89C51指令系统 3.3.1 数据传送类指令 计算机在进行各种操作和运算时,CPU需要操作数,这些操作数有的在累加器中,有的在寄存器中,有的在存储器中,有的由单片机的外部设备提供。AT89C51提

文档评论(0)

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

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

1亿VIP精品文档

相关文档