s INSTRUCCIONES ARITMÉTICAS Y LÓGICAS ADD Rd, Rr Sumar dos registros Rd Rd + Rr Z,C,N,V,H 1 ADC Rd, Rr Sumar con carry dos registros Rd Rd + Rr + C Z,C,N,V,H 1 ADIW Rdl,K Agregar inmediato una constante Rdh:Rdl Rdh:Rdl + K Z,C,N,V,S 2 SUB Rd, Rr Restar dos registros Rd Rd - Rr Z,C,N,V,H 1 SUBI Rd, K Restar una constante de un Registro Rd Rd - K Z,C,N,V,H 1 SBC Rd, Rr Reste con carry dos registros Rd Rd - Rr - C Z,C,N,V,H 1 SBCI Rd, K Restar con Carry una constante de un Registro Rd Rd - K - C Z,C,N,V,H 1 SBIW Rdl,K Reste inmediata de una constante Rdh:Rdl Rdh:Rdl - K Z,C,N,V,S 2 AND Rd, Rr Registro lógico AND Rd Rd Rr Z,N,V 1 ANDI Rd, K Registro lógico AND y constate Rd Rd K Z,N,V 1 OR Rd, Rr Registro lógico OR Rd Rd v Rr Z,N,V 1 ORI Rd, K Registro lógico OR y constate Rd Rd v K Z,N,V 1 EOR Rd, Rr Registro OR exclusivo Rd Rd Rr Z,N,V 1 COM Rd Complemento a uno Rd $FF Rd Z,C,N,V 1 NEG Rd Complemento a dos Rd $00 Rd Z,C,N,V,H 1 SBR Rd,K Establecer los bits en el Registro Rd Rd v K Z,N,V 1 CBR Rd,K Borrar los bits en el Registro Rd Rd ($FF - K) Z,N,V 1 INC Rd Incremento de 1 Rd Rd + 1 Z,N,V 1 DEC Rd Decremento de 1 Rd Rd 1 Z,N,V 1 TST Rd Prueba de cero o Menos Rd Rd Rd Z,N,V 1 CLR Rd Borrar Registro Rd Rd Rd Z,N,V 1 SER Rd Establecer el registro Rd $FF None 1 MUL Rd, Rr Multiplicar sin signo R1:R0 Rd x Rr Z,C 2 MULS Rd, Rr Multiplicar con signo R1:R0 Rd x Rr Z,C 2 MULSU Rd, Rr Multiplicar con signo o sin signo R1:R0 Rd x Rr Z,C 2 FMUL Rd, Rr Multiplicar fracciones sin signo R1:R0 (Rd x Rr) << 1 Z,C 2 FMULS Rd, Rr Multiplicar fracciones con signo R1:R0 (Rd x Rr) << 1 Z,C 2 FMULSU Rd, Rr Multiplicar fracciones con signo o sin signo R1:R0 (Rd x Rr) << 1 Z,C 2
BRANCH INSTRUCTIONS
RJMP k Salto relativo PC PC + k + 1 None 2
IJMP Salto indirecto a (Z) PC Z None 2 JMP k Salto directo PC k None 3 RCALL k Llamar subrutina relativa PC PC + k + 1 None 3 ICALL Llamada relativa a (Z) PC Z None 3 CALL k Llamar subrutina directo PC k None 4 RET Retorno a subrutina PC STACK None 4 RETI Interrumpir retorno PC STACK I 4 CPSE Rd,Rr Comparar, Salta si es igual if (Rd = Rr) PC PC + 2 or 3 None 1 /2/3 CP Rd,Rr Comparar Rd Rr Z, N,V,C,H 1 CPC Rd,Rr Comparar con llevo Rd Rr C Z, N,V,C,H 1 CPI Rd,K Comparar el registro con una constante Rd K Z, N,V,C,H 1 SBRC Rr, b Ignorar si el bit del registro es Borrado if (Rr(b)=0) PC PC + 2 or 3 None 1 /2/3 SBRS Rr, b Ignorar si el bit del registro es establecido if (Rr(b)=1) PC PC + 2 or 3 None 1 /2/3 SBIC P, b Ignorar si el bit de E / S Registro es Borrado if (P(b)=0) PC PC + 2 or 3 None 1 /2/3 SBIS P, b Ignorar si el bit de E / S esté establecido if (P(b)=1) PC PC + 2 or 3 None 1 /2/3 BRBS s, k Salta si se ha establecido el Estado de la bandera if (SREG(s) = 1) then PCPC+k + 1 None 1 /2 BRBC s, k Salta si se ha borrado el Estado de la bandera if (SREG(s) = 0) then PCPC+k + 1 None 1 /2 BREQ k Salta si es igual if (Z = 1) then PC PC + k + 1 None 1 /2 BRNE k Salta si no es igual if (Z = 0) then PC PC + k + 1 None 1 /2 BRCS k Salta si el llevo esta establecido if (C = 1) then PC PC + k + 1 None 1 /2 BRCC k Salta si el llevo esta borrado if (C = 0) then PC PC + k + 1 None 1 /2 BRSH k Salta si es igual o superior if (C = 0) then PC PC + k + 1 None 1 /2 BRLO k Salta si es inferior if (C = 1) then PC PC + k + 1 None 1 /2 BRMI k Salta si es negativo if (N = 1) then PC PC + k + 1 None 1 /2 BRPL k Salta si es positivo if (N = 0) then PC PC + k + 1 None 1 /2 BRGE k Salta, si es mayor o igual, con signo if (N V= 0) then PC PC + k + 1 None 1 /2 BRLT k Salta si es inferior a cero, con signo if (N V= 1) then PC PC + k + 1 None 1 /2 BRHS k Salta si el llevo intermedio es establecido if (H = 1) then PC PC + k + 1 None 1 /2 BRHC k Salta si el llevo intermedio es borrado if (H = 0) then PC PC + k + 1 None 1 /2 BRTS k Salta si la bandera T es establecido if (T = 1) then PC PC + k + 1 None 1 /2 BRTC k Salta si la bandera T as borrado if (T = 0) then PC PC + k + 1 None 1 /2 BRVS k Salta si la bandera de desbordamiento as establecido if (V = 1) then PC PC + k + 1 None 1 /2 BRVC k Salta si la bandera de desbordamiento as borrado if (V = 0) then PC PC + k + 1 None 1 /2 Mnemonics Operands Description Operation Flags #Clocks BRIE k Salta si la interrupción as habilitada if ( I = 1) then PC PC + k + 1 None 1 /2 BRID k Salta si la interrupción as deshabilitada if ( I = 0) then PC PC + k + 1 None 1 /2 DATA TRANSFER INSTRUCTIONS MOV Rd, Rr Copiar entre dos registros Rd Rr None 1 MOVW Rd, Rr Copiar registros pares Rd+1:Rd Rr+1:Rr None 1 LDI Rd, K Cargar a un registro una constante Rd K None 1 LD Rd, X Cargar indirectamente en el puntero x Rd (X) None 2 LD Rd, X+ Cargar indirectamente con post incremento en el puntero x Rd (X), X X + 1 None 2 LD Rd, - X Cargar indirectamente con pre decremento en el puntero x X X - 1, Rd (X) None 2 LD Rd, Y Cargar indirectamente en el puntero y Rd (Y) None 2 LD Rd, Y+ Cargar indirectamente con post incremento en el puntero y Rd (Y), Y Y + 1 None 2 LD Rd, - Y Cargar indirectamente con pre decremento en el puntero y Y Y - 1, Rd (Y) None 2 LDD Rd,Y+q Cargar indirectamente con desplazamiento en el puntero y Rd (Y + q) None 2 LD Rd, Z Cargar indirectamente en el puntero z Rd (Z) None 2 LD Rd, Z+ Cargar indirectamente con post incremento en el puntero z Rd (Z), Z Z+1 None 2 LD Rd, -Z Cargar indirectamente con pre decremento en el puntero z Z Z - 1, Rd (Z) None 2 LDD Rd, Z+q Cargar indirectamente con desplazamiento en el puntero z Rd (Z + q) None 2 LDS Rd, k Cargar directamente a la SRAM una constante Rd (k) None 2 ST X, Rr Guarde indirectamente en el puntero x (X) Rr None 2 ST X+, Rr Guarde indirectamente y realice un post incremento en el puntero x (X) Rr, X X + 1 None 2 ST - X, Rr Guarde indirectamente y realice un pre decremento en el puntero x X X - 1, (X) Rr None 2 ST Y, Rr Guarde indirectamente en el puntero y (Y) Rr None 2 ST Y+, Rr Guarde indirectamente y realice un post incremento en el puntero y (Y) Rr, Y Y + 1 None 2 ST - Y, Rr Guarde indirectamente y realice un pre decremento en el puntero y Y Y - 1, (Y) Rr None 2 STD Y+q,Rr Guarde indirectamente con desplazamiento en el puntero y (Y + q) Rr None 2 ST Z, Rr Guarde indirectamente y realice un post incremento en el puntero z (Z) Rr None 2 ST Z+, Rr Guarde indirectamente y realice un pre decremento en el puntero z (Z) Rr, Z Z + 1 None 2 ST -Z, Rr Guarde indirectamente con desplazamiento en el puntero z Z Z - 1, (Z) Rr None 2 STD Z+q,Rr Guarde indirectamente y realice un post incremento en el puntero z (Z + q) Rr None 2 STS k, Rr Guarde directo a SRAM (k) Rr None 2 LPM Cargar la memoria de un programa R0 (Z) None 3 LPM Rd, Z Cargar la memoria de un programa Rd (Z) None 3 LPM Rd, Z+ Cargar la memoria de un programa y pos incremente Rd (Z), Z Z+1 None 3 SPM Guarde la memoria de un programa (Z) R1:R0 None - IN Rd, P Leer desde el Puerto P Rd P None 1 OUT P, Rr Escribir en el Puerto P P Rr None 1 PUSH Rr Ponga Registro de pila STACK Rr None 2 POP Rd Abre Registro de la Pila Rd STACK None 2 BIT AND BIT-TEST INSTRUCTIONS SBI P,b Establecer el bit en el Registro de I / O I/O(P,b) 1 None 2 CBI P,b Borre el bit en el Registro de I / O I/O(P,b) 0 None 2 LSL Rd Desplazamiento lógico a la izquierda Rd(n+1) Rd(n), Rd(0) 0 Z,C,N,V 1 LSR Rd Desplazamiento lógico a la derecha Rd(n) Rd(n+1), Rd(7) 0 Z,C,N,V 1 ROL Rd Rote a la izquierda atraves del llevo Rd(0)C,Rd(n+1) Rd(n),CRd(7) Z,C,N,V 1 ROR Rd Rote a la derecha atraves del llevo Rd(7)C,Rd(n) Rd(n+1),CRd(0) Z,C,N,V 1 ASR Rd Aritmética Desplazamiento a la derecha Rd(n) Rd(n+1), n=0..6 Z,C,N,V 1 SWAP Rd Intercambiar Nibbles (4bits) Rd(3..0)Rd(7..4),Rd(7..4)Rd(3..0) None 1 BSET s Establecer bandera SREG(s) 1 SREG(s) 1 BCLR s Borrar bandera SREG(s) 0 SREG(s) 1 BST Rr, b Guardar bit desde el registro T T Rr(b) T 1 BLD Rd, b Cargar bit desde el registro T Rd(b) T None 1 SEC Establecer llevo C 1 C 1 CLC Borrar llevo C 0 C 1 SEN Establecer bandera de signo N 1 N 1 CLN Borrar bandera de signo N 0 N 1 SEZ Establecer bandera de cero Z 1 Z 1 CLZ Borrar bandera de cero Z 0 Z 1 SEI Habilitar interrupción global I 1 I 1 CLI Deshabilitar interrupción global I 0 I 1 SES Establecer bandera de test de signo S 1 S 1 CLS Borrar bandera de test de signo S 0 S 1 SEV Establecer desbordamiento de complemento a dos V 1 V 1 CLV Borrar desbordamiento de complemento a dos V 0 V 1 SET Establecer T en SREG T 1 T 1 CLT Borrar T en SREG T 0 T 1 SEH Establecer bandera de llevo intermedio en SREG H 1 H 1
CLH Borra bandea de llevo intermedio en SREG H 0 H 1 MCU CONTROL INSTRUCTIONS NOP No hay operación None 1 SLEEP Dormir (see specific descr. for Sleep function) None 1 WDR Restablecer watchdog (see specific descr. for WDR/timer) None 1 BREAK Romper For On-Chip Debug Only None N/A
Inteligencia artificial: Lo que usted necesita saber sobre el aprendizaje automático, robótica, aprendizaje profundo, Internet de las cosas, redes neuronales, y nuestro futuro
Ciberseguridad: Una Simple Guía para Principiantes sobre Ciberseguridad, Redes Informáticas y Cómo Protegerse del Hacking en Forma de Phishing, Malware, Ransomware e Ingeniería Social
Guía De Hacking De Computadora Para Principiantes: Cómo Hackear Una Red Inalámbrica Seguridad Básica Y Pruebas De Penetración Kali Linux Su Primer Hack
44 Apps Inteligentes para Ejercitar su Cerebro: Apps Gratuitas, Juegos, y Herramientas para iPhone, iPad, Google Play, Kindle Fire, Navegadores de Internet, Windows Phone, & Apple Watch