微机原理课件精品课件(华南理工大学)AVR单片机3.pptVIP

微机原理课件精品课件(华南理工大学)AVR单片机3.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文档。上传文档
查看更多
第三章 AVR单片机指令系统 计算机的指令系统是一套控制计算机操作的代码(二进制),称之为机器语言。计算机只能识别和执行机器语言的指令。 难记!易出错! 为了便于人们理解、记忆及使用,通常用汇编语言指令来描述计算机的指令系统。汇编语言指令可通过汇编器(软件,如AVR Studio,51系列的ASM51等)翻译成计算机能识别的机器语言。 相对较易记,不易出错 CISC结构存在指令系统不等长,指令数多,CPU利用效率低,执行速度慢等缺陷(如51系列) AVR单片机指令系统是先进的RISC体系结构,采用了大型快速存取寄存器组(32个通用工作寄存器)、快速的单周期指令系统以及单级流水线等先进技术 16/32位定长指令 流水线操作 大型快速存取寄存器组 (1) 89 条指令器件:AT90S1200,最基本指令; (2) 90 条指令器件:Attiny11/12/15/22; 90 条指令= □+89 条基本指令 (3) 118 条指令器件: AT90S2313/2323/2343/2333,/4414/4433/4434/8515/90S8534/8535; 118 条指令=◇ + 90 条; (4) 121 条指令器件:ATmega603/103; 121 条指令= △+ 118 条; (5) 130 条指令器件ATmega8535/161等; 130 条指令= ☆+121 条 ATmega16共有131条指令,按功能可分为5大类: 算术和逻辑运算指令(28条); 比较和跳转指令(36条); 数据传送指令(35条); 位操作和位测试指令(28条); MCU控制指令(4条)。 3.1 指令格式 3. 1 . 1 指令格式 AVR的指令的一般格式为: 目的地址 指令的三种表示方式 指令的二进制表示形式 指令的十六进制形式 指令的助记符形式又称为指令的汇编形式或汇编语句 3.1.2 指令集名词 1、状态寄存器 SREG: 状态寄存器 C: 进位标志位 Z: 结果为零标志位 N: 结果为负数标志位(结果的最高位为1) V: 2 的补码溢出指示位 S: N⊕V, 符号测试位 H: 半进位标志位 T: 用于 BLD 和 BST 指令传送位 I: 全局中断使能/禁止标志位 SREG 2、寄存器和操作数 Rd: 目的(或源)寄存器,R0~R31或R16~R31 Rr: 源寄存器, R0~R31 R: 指令执行后的结果 K: 常数项或字节数据 (8位) 0~255或-128~+127 k: 程序计数器的常量地址数据 b: 在寄存器区中或I/O寄存器中的位(3 位) 0~7 s: 在状态寄存器中的位(3位) 0~7 X, Y, Z: 地址指针寄存器(X=R27:R26, Y=R29:R28, Z=R31:R30) P(或A): I/O 口地址 0~63或0~31 q: 地址偏移量常数(6 位) 0~63 3、堆栈 STACK: 作为返回地址和压栈寄存器的堆栈 SP:堆栈STACK 的指针 3.1.3 寻址方式 指令的一个重要组成部分是操作数,指令给出参与运算的数据的方式称为寻址方式。 AVR 单片机指令操作数的寻址方式有以下几种:单寄存器直接寻址、双寄存器直接寻址、I /O 寄存器直接寻址、数据存储器直接寻址、带位移的数据存储器间接寻址、数据存储器间接寻址、带预减量的数据存储器间接寻址、带后增量的数据存储器间接寻址、从程序存储器取常数寻址、程序直接寻址、程序间接寻址、程序相对寻址 1、单寄存器直接寻址 INC Rd ;Rd←Rd+1 2、双寄存器直接寻址 ADD Rd,Rr ; Rd←Rd+Rr 3、I/O寄存器直接寻址 IN Rd,A ; Rd←A(A为64个I/O寄存器之一) 4、数据存储器直接寻址 LDS Rd,K ; Rd←(K)地址为K的SRAM的内容送Rd 5、数据存储器间接寻址 LD Rd,Y ; Rd←(Y) 注意与数据存储器直接寻址的区别 6、带后增量的数据存储器间接寻址 LD Rd,Y+ ; Rd←(Y), Y=Y+1 7、带预减量的数据存储器间接寻址 LD Rd,-Y ;Y=Y-1, Rd←(Y) 8、带位移的数据存储器间接寻址 LDD Rd,Y+q ; Rd←(Y+q) 0≤q≤63 ;Y寄存器的内容不变! 9、从程序存储器取常数寻址 LPM ; R0←(Z) 无操作数 LPM R16, Z ;

文档评论(0)

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

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档