AVR 单片机指令系统 1
广州市天河双龙电子有限公司 http://WWW.SL.COM.CN
AVR 单片机指令系统快速记忆方法及速查表
计算机的指令系统是一套控制计算机操作的代码 称之为机器语言 计算机只能识别和执行机器语
言的指令 为了便于人们理解 记忆和使用 通常用汇编语言指令来描述计算机的指令系统 汇编语言
指令可通过汇编器翻译成计算机能识别的机器语言
AVR 单片机指令系统是 RISC 结构的精简指令集 是一种简明易掌握﹑效率高的指令系统
AVR 单片机指令系统速查表,不同器件使用不同的指令表,见附录 3:
(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 条;
118 条指令分类:
寄存器传送(4): MOV,LD,SER,LDS,
X 寄存器(3): LD Rd,X;LD Rd,X+;LD Rd,-X
Y 寄存器(4): LD Rd,Y;LD Rd,Y+;LD Rd,-Y;LDD Rd,Y+q
Z 寄存器(4): LD Rd,Z;LD Rd,Z+;LD Rd,-Z;LDD Rd,Z+q
X 寄存器(3): ST X,Rr;ST X+,Rr;ST –X,Rr
数据传送指令 Y 寄存器(4): ST Y,Rr;ST Y+,Rr;ST –Y,Rr;STD Y+q,Rr
(31) Z 寄存器(4): ST Z,Rr;ST Z+,Rr;ST –Z,Rr;STD Z+q,Rr
读存储器(1): LPM
I/O 指令(2): IN,OUT
栈指令(2): PUSH,POP
算术指令与 加(4): ADD,ADC,ADIW,INC;
(10) 减(6): SUB,SUBI,SBC,SBCI,SBIW,DEC
逻辑运算指令 与(2):AND,ANDI,
(12) 或(3): OR,ORI, EOR
清 0 置 1:(7) COM,NEG, CBR,SBR, CLR ,TST,SER,
转移指令: (2) RJMP,IJMP(JMP 转移)
调用指令: (2) RCALL,ICALL(CALL 调用)
转移调用指令 返回 : (2) RET,RETI (RET 返回)
(34) 比较指令: (3) CP,CPC,CPI (CP 比较)
分支指令: (5) CPSE,SBRC,SBRS,SBIC,SBIS, (S 为 1 跳,C 为 0 跳,R 寄存器,I 为 I/O)
基本条件分支指令: (2) B RBS,BRBC ( S 为 1 转,C 为 0 转) ( 状态字为 I,T,H,S,V,N,Z,C)
派生指令:(18) BRIE,BRID;BRTS,BRTC;BRHS,BRHC;BRGE,BRLT;BRVS,BRVC;
BRMI,BRPL;BREQ,BRNE;BRCS,BRCC;BRSH,BRLO;
位 I/O 操作指令: (2)SBI,CBI (S 置 1,C 清 0)
状态寄存器指令: (2)BSET,BCLR(状态字为 I,T,H,S,V,N,Z,C)
位操作及其他 派生指令:(16) BSET -- SEI,SET,SEH,SES SEV,SEN,SEZ,SEC (SE 置 1 某位)
(31) BCLR -- CLI,CLT,CLH,CLS,CLV,CLN,CLZ,CLC (CL 清 0 某位)
位传送: (2) BST,BLD,
移位指令: (6) LSL,LSR,ASR,ROL,ROR,SWAP(LS 右移,RO 左移,AS 算术右移,R 寄存器)
其他指令: (3) NOP,SLEEP,WDR