- 1、本文档共13页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ATmega指令
++++++++++++++++++++++++++++++++++++++++++++++++
状态寄存器与标志位
SREG: 8 位状态寄存器,其中每一位的定义为:
C: 进位标志位
Z: 结果为零标志位
N: 结果为负数标志位
V: 2 的补码溢出标志位
S: N⊕V,用于符号测试的标志位
H: 操作中产生半进位的标志位
T: 用于和 BLD、BST 指令进行位数据交换的位
I: 全局中断触发/禁止标志位
算术和逻辑指令
加法指令
1.不带进位位加法
ADD Rd,Rr 0≤d≤31,0≤r≤31
说明:两个寄存器不带进位 C 标志相加,结果送目的寄存器 Rd。
2.带进位位加法
ADC Rd,Rr 0≤d≤31,0≤r≤31
说明:两个寄存器和 C标志的内容相加,结果送目的寄存器 Rd。
3.字加立即数
ADIW Rdl,K dl 为:24、26、28、30,0≤K≤63
说明:寄存器对(一个字)同立即数(0~63)相加,结果放到寄存器对。
4.增1 指令
INC Rd 0≤d≤31
说明:寄存器 Rd 的内容加 1,结果送目的寄存器 Rd 中。
减法指令
1.不带进位位减法
SUB Rd,Rr 0≤d≤31,0≤r≤31
说明:两个寄存器相减结果送目的寄存器 Rd 中。
2.减立即数(字节)
SUBI Rd,K 16≤d≤31,0≤K≤255
说明:一个寄存器和常数相减,结果送目的寄存器 Rd。
3.带进位位减法
SBC Rd,Rr 0≤d≤31,0≤r≤31
说明:两个寄存器带着 C 标志相减,结果放到目的寄存器 Rd 中。
4.带进位位减立即数(字节)
SBCI Rd,K 16≤d≤31,0≤K≤255
说明:寄存器和立即数带着 C 标志相减,结果放到目的寄存器 Rd 中。
5.减立即数(字)
SBIW Rdl,K dl为24、26、28、30,0≤K≤63
说明:寄存器对(字)与立即数 0~63 相减,结果放入寄存器对。
6.减1 指令
DEC Rd 0≤d≤31
说明:寄存器 Rd 的内容减 1,结果送目的寄存器 Rd 中。
取反码指令
COM Rd 0≤d≤31
说明:该指令完成对寄存器 Rd 的二进制反码操作。
操作:Rd←$FF-Rd PC←PC+1 机器码:1001 010d dddd 0000
取补码指令
NEG Rd 0≤d≤31
说明:寄存器 Rd 的内容转换成二进制补码值。
操作:Rd←$00-Rd PC←PC+1 机器码:1001 010d dddd 0001
比较指令
1.寄存器比较
CP Rd,Rr 0≤d≤31,0≤r≤31
说明:该指令完成两个寄存器 Rd 和 Rr 相比较操作,而寄存器的内容不改变,该指令
后能使用所有条件跳转指令。
2.带进位比较
CPC Rd,Rr 0≤d≤31, 0≤r≤31
说明:该指令完成寄存器 Rd 的值和寄存器 Rr 加 C 相比较操作,而寄存器的内容不改
变,该指令后能使用所有条件跳转指令。
3.与立即数(字节)比较
CPI Rd,K 16≤d≤31,0≤K≤255
说明:该指令完成寄存器 Rd 和常数的比较操作,寄存器的内容不改变,该指令后能使
用所有条件跳转指令。
逻辑与指令
1.寄存器逻辑与
AND Rd,Rr 0≤d≤31,0≤d≤31
说明:寄存器 Rd 和寄存器 Rr 的内容逻辑与,结果送目的寄存器 Rd。
2.与立即数(字节)
ANDI Rd,K 16≤d≤31,0≤K≤255
说明:寄存器 Rd 的内容与常数逻辑与,结果送目的寄存器 Rd。
3.寄存器位清零
CBR Rd,K 16≤d≤31,0≤K≤255
说明:清除寄存器 Rd 中的指定位,利用寄存器 Rd 的内容与常数表征码 K 的补码相与,
其结果放在寄存器 Rd 中。
4.测试寄存器为零或负
TST Rd 0≤d≤31
说明:测试寄存器为零或负,实现寄存器内容自己同自己的逻辑与操作,而寄存器内
容不改变。
逻辑或指令
1.寄存器逻辑或
OR Rd,Rr 0≤d≤31, 0≤r≤31
应用:置数,使某位为 1,用 1 去或;保留,用 0 去逻辑或;代替硬件或门。
说明:完成寄存器 Rd 与寄存器 Rr 的内容逻辑或操作,结果送目的寄存器 Rd 中。
2.或立即数(字节)
ORI Rd,K 16≤d≤31, 0≤K≤255
说明:完成寄存器 Rd 的内容与常量 K 逻辑或操作,结果送目的寄存器 Rd中。
3.置寄存器位
SBR Rd,K 16≤d≤31, 0≤K≤255
说明:用于对寄
文档评论(0)