| 指令名称 | 操作数 | 描述 | 操作 | 影响标记 | 周期 | 
| 算术和逻辑指令 | |||||
| ADD | Rd,Rr | Add without Carry | Rd = Rd + Rr | Z,C,N,V,H,S | 1 | 
| ADC | Rd,Rr | Add with Carry | Rd = Rd + Rr + C | Z,C,N,V,H,S | 1 | 
| ADIW | Rd,k | Add Immediate To Word | Rd+1:Rd,K | Z,C,N,V,S | 2 | 
| SUB | Rd,Rr | Subtract without Carry | Rd = Rd - Rr | Z,C,N,V,H,S | 1 | 
| SUBI | Rd,K8 | Subtract Immediate | Rd = Rd - K8 | Z,C,N,V,H,S | 1 | 
| SBC | Rd,Rr | Subtract with Carry | Rd = Rd - Rr - C | Z,C,N,V,H,S | 1 | 
| SBCI | Rd,K8 | Subtract with Carry Immedtiate | Rd = Rd - K8 - C | Z,C,N,V,H,S | 1 | 
| AND | Rd,Rr | Logical AND | Rd = Rd · Rr | Z,N,V,S | 1 | 
| ANDI | Rd,K8 | Logical AND with Immediate | Rd = Rd · K8 | Z,N,V,S | 1 | 
| OR | Rd,Rr | Logical OR | Rd = Rd V Rr | Z,N,V,S | 1 | 
| ORI | Rd,K8 | Logical OR with Immediate | Rd = Rd V K8 | Z,N,V,S | 1 | 
| EOR | Rd,Rr | Logical Exclusive OR | Rd = Rd EOR Rr | Z,N,V,S | 1 | 
| COM | Rd | One's Complement | Rd = $FF - Rd | Z,C,N,V,S | 1 | 
| NEG | Rd | Two's Complement | Rd = - Rd | Z,C,N,V,H,S | 1 | 
| SBR | Rd,K8 | Set Bit(s) in Register | Rd = Rd V K8 | Z,C,N,V,S | 1 | 
| CBR | Rd,K8 | Clear Bit(s) in Register | Rd = Rd · ($FF - K8) | Z,C,N,V,S | 1 | 
| INC | Rd | Increment Register | Rd = Rd + 1 | Z,N,V,S | 1 | 
| DEC | Rd | Decrement Register | Rd = Rd -1 | Z,N,V,S | 1 | 
| TST | Rd | Test for Zero or Negative | Rd = Rd · Rd | Z,C,N,V,S | 1 | 
| CLR | Rd | Clear Register | Rd = 0 | Z,N,V,S | 1 | 
| SER | Rd | Set Register | Rd = $FF | None | 1 | 
| SBIW | Rdl,K6 | Subtract Immediate from Word | Rdh:Rdl = Rdh:Rdl - K 6 | Z,C,N,V,S | 2 | 
| MUL | Rd,Rr | Multiply Unsigned | R1:R0 = Rd * Rr | Z,C | 2 | 
| MULS | Rd,Rr | Multiply Signed | R1:R0 = Rd * Rr | Z,C | 2 | 
| MULSU | Rd,Rr | Multiply Signed with Unsigned | R1:R0 = Rd * Rr | Z,C | 2 | 
| FMUL | Rd,Rr | Fractional Multiply Unsigned | R1:R0 = (Rd * Rr) << 1 | Z,C | 2 | 
| FMULS | Rd,Rr | Fractional Multiply Signed | R1:R0 = (Rd *Rr) << 1 | Z,C | 2 | 
| FMULSU | Rd,Rr | Fractional Multiply Signed with Unsigned | R1:R0 = (Rd * Rr) << 1 | Z,C | 2 | 
| 数据传输指令 | |||||
| MOV | Rd,Rr | Copy register | Rd = Rr | None | 1 | 
| MOVW | Rd,Rr | Copy register pair | Rd+1:Rd = Rr+1:Rr, r,d even | None | 1 | 
| LDI | Rd,K8 | Load Immediate | Rd = K | None | 1 | 
| LDS | Rd,k | Load Direct | Rd = (k) | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect | Rd = (X) | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect and Post-Increment | Rd = (X), X=X+1 | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect and Pre-Decrement | X=X-1, Rd = (X) | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect | Rd = (Y) | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect and Post-Increment | Rd = (Y), Y=Y+1 | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect and Pre-Decrement | Y=Y-1, Rd = (Y) | None | 2* | 
| LD | Rd,X,Y,Z+q | Load Indirect with displacement | Rd = (Y+q) | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect | Rd = (Z) | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect and Post-Increment | Rd = (Z), Z=Z+1 | None | 2* | 
| LD | Rd,X,Y,Z | Load Indirect and Pre-Decrement | Z=Z-1, Rd = (Z) | None | 2* | 
| LAC | Rd,X,Y,Z | Load and Clear | Z = Rd •($FF-Z) | None | 2 | 
| LAT | Rd,X,Y,Z | Load and Toggle | Z = Rd ⊕ (Z) | None | 2 | 
| LAS | Rd,X,Y,Z | Load and Set | Z = Rd v (Z) | None | 2 | 
| XCH | Rd,X,Y,Z | Exchange | Z = Rd, Rd = Z | None | 2 | 
| LD | Rd,X,Y,Z+q | Load Indirect with displacement | Rd = (Z+q) | None | 2* | 
| STS | k, Rr | Store Direct | (k) = Rr | None | 2* | 
| ST | X,Y,Z,Rr | Store Indirect | (X) = Rr | None | 2* | 
| ST | X,Y,Z,Rr | Store Indirect and Post-Increment | (X) = Rr, X=X+1 | None | 2* | 
| ST | X,Y,Z,Rr | Store Indirect and Pre-Decrement | X=X-1, (X)=Rr | None | 2* | 
| ST | X,Y,Z,Rr | Store Indirect | (Y) = Rr | None | 2* | 
| ST | X,Y,Z,Rr | Store Indirect and Post-Increment | (Y) = Rr, Y=Y+1 | None | 2 | 
| ST | X,Y,Z,Rr | Store Indirect and Pre-Decrement | Y=Y-1, (Y) = Rr | None | 2 | 
| ST | X,Y,Z+q,Rr | Store Indirect with displacement | (Y+q) = Rr | None | 2 | 
| ST | X,Y,Z,Rr | Store Indirect | (Z) = Rr | None | 2 | 
| ST | X,Y,Z,Rr | Store Indirect and Post-Increment | (Z) = Rr, Z=Z+1 | None | 2 | 
| ST | X,Y,Z,Rr | Store Indirect and Pre-Decrement | Z=Z-1, (Z) = Rr | None | 2 | 
| ST | X,Y,Z+q,Rr | Store Indirect with displacement | (Z+q) = Rr | None | 2 | 
| LPM | None | Load Program Memory | R0 = (X,Y,Z) | None | 3 | 
| LPM | Rd,X,Y,Z | Load Program Memory | Rd = (X,Y,Z) | None | 3 | 
| LPM | Rd,X,Y,Z | Load Program Memory and Post-Increment | Rd = (X,Y,Z), Z=Z+1 | None | 3 | 
| ELPM | None | Extended Load Program Memory | R0 = (RAMPZ:X,Y,Z) | None | 3 | 
| ELPM | Rd,X,Y,Z | Extended Load Program Memory | Rd = (RAMPZ:X,Y,Z) | None | 3 | 
| ELPM | Rd,X,Y,Z | Extended Load Program Memory and Post Increment | Rd = (RAMPZ:X,Y,Z), Z = Z+1 | None | 3 | 
| SPM | None | Store Program Memory | (X,Y,Z) = R1:R0 | None | - | 
| ESPM | None | Extended Store Program Memory | (RAMPZ:X,Y,Z) = R1:R0 | None | - | 
| IN | Rd,P | In Port | Rd = P | None | 1 | 
| OUT | P,Rr | Out Port | P = Rr | None | 1 | 
| PUSH | Rr | Push register on Stack | STACK = Rr | None | 2 | 
| POP | Rd | Pop register from Stack | Rd = STACK | None | 2 | 
| 位操作指令 | |||||
| LSL | Rd | Logical shift left | Rd(n+1)=Rd(n), Rd(0)=0, C=Rd(7) | Z,C,N,V,H,S | 1 | 
| LSR | Rd | Logical shift right | Rd(n)=Rd(n+1), Rd(7)=0, C=Rd(0) | Z,C,N,V,S | 1 | 
| ROL | Rd | Rotate left through carry | Rd(0)=C, Rd(n+1)=Rd(n), C=Rd(7) | Z,C,N,V,H,S | 1 | 
| OR | Rd | Rotate right through carry | Rd(7)=C, Rd(n)=Rd(n+1), C=Rd(0) | Z,C,N,V,S | 1 | 
| ASR | Rd | Arithmetic shift right | Rd(n)=Rd(n+1), n=0,...,6 | Z,C,N,V,S | 1 | 
| SWAP | Rd | Swap nibbles | Rd(3..0) = Rd(7..4), Rd(7..4) = Rd(3..0) | None | 1 | 
| BSET | s | Set flag | SREG(s) = 1 | SREG(s) | 1 | 
| BCLR | s | Clear flag | SREG(s) = 0 | SREG(s) | 1 | 
| SBI | P,b | Set bit in I/O register | I/O(P,b) = 1 | None | 2 | 
| CBI | P,b | Clear bit in I/O register | I/O(P,b) = 0 | None | 2 | 
| BST | Rr,b | Bit store from register to T | T = Rr(b) | T | 1 | 
| BLD | Rd,b | Bit load from register to T | Rd(b) = T | None | 1 | 
| SEC | None | Set carry flag | C =1 | C | 1 | 
| CLC | None | Clear carry flag | C = 0 | C | 1 | 
| SEN | None | Set negative flag | N = 1 | N | 1 | 
| CLN | None | Clear negative flag | N = 0 | N | 1 | 
| SEZ | None | Set zero flag | Z = 1 | Z | 1 | 
| CLZ | None | Clear zero flag | Z = 0 | Z | 1 | 
| SEI | None | Set interrupt flag | I = 1 | I | 1 | 
| CLI | None | Clear interrupt flag | I = 0 | I | 1 | 
| SES | None | Set signed flag | S = 1 | S | 1 | 
| CLN | None | Clear signed flag | S = 0 | S | 1 | 
| SEV | None | Set overflow flag | V = 1 | V | 1 | 
| CLV | None | Clear overflow flag | V = 0 | V | 1 | 
| SET | None | Set T-flag | T = 1 | T | 1 | 
| CLT | None | Clear T-flag | T = 0 | T | 1 | 
| SEH | None | Set half carry flag | H = 1 | H | 1 | 
| CLH | None | Clear half carry flag | H = 0 | H | 1 | 
| NOP | None | No operation | None | None | 1 | 
| SLEEP | None | Sleep | See instruction manual | None | 1 | 
| WDR | None | Watchdog Reset | See instruction manual | None | 1 | 
| BREAK | None | Execution Break | See instruction manual | None | 1 | 
| 跳转分支指令 | |||||
| RJMP | k | Relative Jump | PC = PC + k +1 | None | 2 | 
| IJMP | None | Indirect Jump to (X,Y,Z) | PC = Z | None | 2 | 
| EIJMP | None | Extended Indirect Jump (X,Y,Z) | STACK = PC+1, PC(15:0) = Z, PC(21:16) = EIND | None | 2 | 
| JMP | k | Jump | PC = k | None | 3 | 
| RCALL | k | Relative Call Subroutine | STACK = PC+1, PC = PC + k + 1 | None | 3/4* | 
| ICALL | None | Indirect Call to (X,Y,Z) | STACK = PC+1, PC = Z | None | 3/4* | 
| EICALL | None | Extended Indirect Call to (X,Y,Z) | STACK = PC+1, PC(15:0) = Z, PC(21:16) =EIND | None | 4* | 
| CALL | k | Call Subroutine | STACK = PC+2, PC = k | None | 4/5* | 
| RET | None | Subroutine Return | PC = STACK | None | 4/5* | 
| RETI | None | Interrupt Return | PC = STACK | I | 4/5* | 
| CPSE | Rd,Rr | Compare, Skip if equal | if (Rd ==Rr) PC = PC 2 or 3 | None | 1/2/3 | 
| CP | Rd,Rr | Compare | Rd -Rr | Z,C,N,V,H,S | 1 | 
| CPC | Rd,Rr | Compare with Carry | Rd - Rr - C | Z,C,N,V,H,S | 1 | 
| CPI | Rd,K8 | Compare with Immediate | Rd - K | Z,C,N,V,H,S | 1 | 
| SBRC | Rr,b | Skip if bit in register cleared | if(Rr(b)==0) PC = PC + 2 or 3 | None | 1/2/3 | 
| SBRS | Rr,b | Skip if bit in register set | if(Rr(b)==1) PC = PC + 2 or 3 | None | 1/2/3 | 
| SBIC | P,b | Skip if bit in I/O register cleared | if(I/O(P,b)==0) PC = PC + 2 or 3 | None | 1/2/3 | 
| SBIS | P,b | Skip if bit in I/O register set | if(I/O(P,b)==1) PC = PC + 2 or 3 | None | 1/2/3 | 
| BRBC | s,k | Branch if Status flag cleared | if(SREG(s)==0) PC = PC + k + 1 | None | 1/2 | 
| BRBS | s,k | Branch if Status flag set | if(SREG(s)==1) PC = PC + k + 1 | None | 1/2 | 
| BREQ | k | Branch if equal | if(Z==1) PC = PC + k + 1 | None | 1/2 | 
| BRNE | k | Branch if not equal | if(Z==0) PC = PC + k + 1 | None | 1/2 | 
| BRCS | k | Branch if carry set | if(C==1) PC = PC + k + 1 | None | 1/2 | 
| BRCC | k | Branch if carry cleared | if(C==0) PC = PC + k + 1 | None | 1/2 | 
| BRSH | k | Branch if same or higher | if(C==0) PC = PC + k + 1 | None | 1/2 | 
| BRLO | k | Branch if lower | if(C==1) PC = PC + k + 1 | None | 1/2 | 
| BRMI | k | Branch if minus | if(N==1) PC = PC + k + 1 | None | 1/2 | 
| BRPL | k | Branch if plus | if(N==0) PC = PC + k + 1 | None | 1/2 | 
| BRGE | k | Branch if greater than or equal (signed) | if(S==0) PC = PC + k + 1 | None | 1/2 | 
| BRLT | k | Branch if less than (signed) | if(S==1) PC = PC + k + 1 | None | 1/2 | 
| BRHS | k | Branch if half carry flag set | if(H==1) PC = PC + k + 1 | None | 1/2 | 
| BRHC | k | Branch if half carry flag cleared | if(H==0) PC = PC + k + 1 | None | 1/2 | 
| BRTS | k | Branch if T flag set | if(T==1) PC = PC + k + 1 | None | 1/2 | 
| BRTC | k | Branch if T flag cleared | if(T==0) PC = PC + k + 1 | None | 1/2 | 
| BRVS | k | Branch if overflow flag set | if(V==1) PC = PC + k + 1 | None | 1/2 | 
| BRVC | k | Branch if overflow flag cleared | if(V==0) PC = PC + k + 1 | None | 1/2 | 
| BRIE | k | Branch if interrupt enabled | if(I==1) PC = PC + k + 1 | None | 1/2 | 
| BRID | k | Branch if interrupt disabled | if(I==0) PC = PC + k + 1 | None | 1/2 |