Sunteți pe pagina 1din 7

Instrucciones ASM.

Estado de registro (SREG) SREG: Registro de Estado C: Carry Flag Z: Zero Flag N: Indicador de negativo V: Indicador de desbordamiento del complemento a dos. S: N V, para las pruebas firmadas H: Half Carry Flag T: transferencia de bits utilizado por BLD e instrucciones BST I: Global Interrupt Enable / Disable Flag

Registros y operandos
Rd: Destino (y fuente) inscribirse en el Registro de archivo Rr: Registro Fuente en el Archivo de Registro R: El resultado despus de la instruccin se ejecuta K: Los datos constantes k: Constante direccin b: Bit en el Archivo de Registro o I / O Register (3 bits) s: bit en el registro de estado (3 bits) X, Y, Z: Indirecto registro de direcciones (X = R27: R26, Y = R29: R28 y Z = R31: R30) A: I / O direccin de ubicacin q: Desplazamiento de direccionamiento directo (6-bit)

Instruccin

Para qu sirve
Multiplica fraccional firmado con unsigned. Esta instruccin se lleva a cabo de 8 bits*8 bits. Realiza un salto relativo a una direccin que se encuentra dentro de PC 2K + 1 y PC +2K (words). En ensamblador, se usan etiquetas en lugar de operadores relativos. Para los microcontroladores AVR con memoria de programa que no excede 4K words (8K bytes) esta instruccin puede dirigirse a toda la memoria desde cualquier posicin de direccin. Salto indirecto a la direccin apuntada por la Z(16 bits) un registro puntero en el archivo de registro. El registro de Zpuntos es de 16 bits de ancho y permite saltar dentro de los ms bajos palabras 64K (128K bytes) parte de la memoria de programa. Saltar. Ir a una direccin dentro de la totalidad 4M de memoria de programa. Convocatoria relativa a la subrutina. Llamada relativa a una direccin dentro PC 2K + 1 + 2K y PC (las palabras). La direccin de retorno se almacena en la pila. Llamada indirecta a Z Llamada a la subrutina. Las llamadas a una subrutina dentro de la memoria del programa

Operadores Ciclos de reloj.

FMULSU

Rd,Rc

RJMP

IJMP

IJMP

JMP

RCALL

ICALL CALL

ICALL K

3 4

entero.

RET RETI CPSE CP CPC CPI SBRC SBRS SBIC SBIS BRBS BRBC

Retorno de subrutina Es el retorno de una interrupcin. Restaura el registro de flags. Compara, salta si es igual. Compara. Compara con acarreo. Compara inmediato. Comparacin entre registro y constante Salto si el bit del registro esta borrado. Esquiva si el bit est a 1. Salto si el bit del registro esta a set. Esquiva si el bit del puerto est a 0. SBRS Rr, b Esquiva si el bit del puerto est a1. Salto si el bit del registro de I/O est a set Desvo si el flag de estado est a set. Desvo si el flag de estado est borrado. Desvo si son iguales. BREQ realiza un desvo condicional relativo. Hace un test del flag zero (Z) y se desva relativamente a PC si Z est a set. Si lainstruccin se ejecuta inmediatamente despus de alguna de las instrucciones CP, CPI, SUB o SUBI, el desvo puede ocurrir si y slo si el nmero binario con o sin signo representado en Rd es igual al nmero binario con o sin signo representado en Rr. Desvo si no son iguales

RET RETI Rd, Rr Rd, Rr Rd, Rr Rd, K Rr, b Rr, b A, b A, b s, K s, K

4 4 1/2/3 1 1 1 1/2/3 1/2/3 1/2/3 1/2/3 1/2 1/2

BREQ

1/2

BRNE

1/2

BRCS BRCC BRSH BRLO BRMI BRPL

Desvo si carry est a set Desvo si carry est borrado Desvo si es igual o mayor Desvo si es menor Desvo si es negativo Comprueba la bandera negativo (N) y las ramas relativamente al PC si N se borra. Rama relativa condicional. Comprueba la bandera de signo (S) y las ramas relativamente al PC, si S se borra. Rama relativa condicional. Comprueba la bandera Firmado (S) y las ramas relativamente al PC si S est ajustado. Rama relativa condicional. Comprueba el indicador de acarreo mitad (H) y las ramas relativamente al PC si H est ajustado. Rama relativa condicional. Comprueba el indicador de acarreo mitad (H) y las ramas relativamente al PC si H est desactivada. Rama relativa condicional. Comprueba la bandera y ramas T relativamente al PC si T est establecido. Rama relativa condicional. Comprueba la bandera y ramas T relativamente al PC si T se borra. Rama relativa condicional. Comprueba la bandera de desbordamiento (V) y las ramas relativamente al PC si V se establece. Rama relativa condicional. Comprueba la bandera de

K K K K K
K

1/2 1/2 1/2 1/2 1/2


1/2

BRGE

1/2

BRLT

1/2

BRHS

1/2

BRHC

1/2

BRTS

1/2

BRTC

1/2

BRVS

1/2

BRVC

1/2

BRIE

BRID

SBI

CBI

LSL LSR ROL ROR ASR

SWAP

BSET BCLR BST

desbordamiento (V) y las ramas relativamente al PC si V se borra. Rama relativa condicional. Comprueba la bandera de interrupcin global (I) y las ramas relativamente al PC si est establecido. Rama relativa condicional. Comprueba la bandera de interrupcin global (I) y las ramas relativamente al PC si se borra. Establece un bit especificado en un registro de E / S. Esta instruccin funciona en los bajos 32 registros de E / S Direcciones 0-31. Borra el bit especificado en un registro de E / S. Esta instruccin funciona en los bajos 32 registros de E / S Direcciones 0-31. Genera un desplazamiento lgico a la izquierda. Genera un desplazamiento lgico a la derecha. Rota a la izquierda sin acarreo. Rota a la derecha sin acarreo. Cambia el antiguo bit 0 a el bit de acarreo en el registro de estado. Intercambia los dos nibbles del acumulador (bits 3-0 y bits 7-4). El mismo resultado puede conseguirse mediante cuatro instrucciones de rotacin. Establece un solo indicador o bit en SREG. Borra una sola bandera en SREG Bit de registro T.

1/2

1/2

P,b

P,b

Rd Rd Rd Rd Rd

1 1 1 1 1

Rd

S S Rr,b

1 1 1

BLD SEC

CLC

SEN

Copia la bandera T en el SREG (registro de estado) en el bit b en el registro RD. Establece el indicador de acarreo (C) en SREG (registro de estado). Esta instruccin apaga el bit correspondiente a la bandera de acarreo, o sea, lo pone en cero. Establece el indicador negativo (N) en SREG (registro de estado).

Rd,b -

1 1

S-ar putea să vă placă și