Sie sind auf Seite 1von 26

Repertorio de instrucciones del microprocesador 8086

REPERTORIO DE INSTRUCCIONES DEL MICROPROCESADOR 8086

INSTRUCCIONES DE TRANSFERENCIA:
NINGUNA INSTRUCCIN DE TRANSFERENCIA AFECTA AL REGISTRO DE ESTADO (SALVO LAS EXPLCITAS CON EL REGISTRO DE ESTADO) A) GENRICAS MOV

B) DE CADENAS

LODSB, LODSW, STOSB, STOSW, MOVSB, MOVSW PUSH, POP, PUSHF, POPF XCHG XLAT IN, OUT LEA, LDS, LES LAHF, SAHF

C) DE PILA D) DE INTERCAMBIO E) DE ACCESO A TABLA F) DE ENTRADA O SALIDA G) DE DIRECCIONES LGICAS

H) CON REGISTRO DE ESTADO

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (I)

A) GENRICAS: Mnemotcnico: MOV Sintaxis: Operacin: MOV destino, origen (MOVe)

destino origen

POSIBLES COMBINACIONES:
DESTINO REGISTRO ORIGEN DATO INMEDIATO EJEMPLOS MOV AX, 23759 MOV CL, 7Fh MEMORIA DATO INMEDIATO MOV byte ptr [BX], 0Ch MOV VARIABLE_1, 345 REGISTRO MEMORIA MOV BL, TABLA.[SI] MOV CX, [BX+SI4] MEMORIA REGISTRO MOV 2000[BX], DX MOV [BX+2000], DX REGISTRO (*) REGISTRO MOV DS, AX MOV BP, SP

(*) PARA EL CASO REGISTRO REGISTRO, NO EST PERMITIDO QUE AMBOS SEAN REGISTROS DE SEGMENTO

UTILIDAD: TOMAR DATOS PARA UBICARLOS EN EL LUGAR ADECUADO ANTES DE PROCESARLOS, Y PARA GUARDAR EL RESULTADO EN EL LUGAR OPORTUNO.

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (II)

B) DE CADENAS (I): UTILIDAD: ACCEDER DE MANERA SECUENCIAL A LOS DATOS O ELEMENTOS DE UNA CADENA, LISTA O VECTOR SIN TENER QUE ACTUALIZAR DE MANERA EXPLCITA, POR PROGRAMA, EL HIPOTTICO PUNTERO UTILIZADO PARA EL ACCESO

INSTRUCCIONES PARA TOMAR DATOS DE UN VECTOR Mnemotcnico: LODSB Sintaxis: Operacin: LODSB AL DS:[SI] SI SI+K (LoaD String Byte)

(K= 1 si bandera D=0 K=-1 si bandera D=1)

Mnemotcnico: LODSW Sintaxis: Operacin: LODSW AX DS:[SI] SI SI+K

(LoaD String Word)

(K= 2 si bandera D=0 K=-2 si bandera D=1)

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (III) B) DE CADENAS (II):

INSTRUCCIONES PARA GUARDAR DATOS EN UN VECTOR Mnemotcnico: STOSB Sintaxis: Operacin: STOSB DS:[DI] AL DI DI+K (STOre String Byte)

(K= 1 si bandera D=0 K=-1 si bandera D=1)

Mnemotcnico: STOSW Sintaxis: Operacin: STOSW DS:[DI] AX DI DI+K

(STOre String Word)

(K= 2 si bandera D=0) (K=-2 si bandera D=1)

INSTRUCCIONES PARA MOVIMIENTO DE BLOQUES Mnemotcnico: MOVSB Sintaxis: Operacin: MOVSB bye ptr ES:[DI] byte ptr DS:[SI] SI SI+K (K= 1 si bandera D=0 DI DI+K K=-1 si bandera D=1) (MOVe String Byte)

Mnemotcnico: MOVSW Sintaxis: Operacin: MOVSW

(MOVe String Byte)

word ptr ES:[DI] word ptr DS:[SI] SI SI+K (K= 1 si bandera D=0 DI DI+K K=-1 si bandera D=1)

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (IV)

C) DE PILA (I):

Mnemotcnico: PUSH Sintaxis: Operacin: PUSH origen SP SP-2 SS:[SP] palabra origen

El operando origen puede ser una palabra inmediata, un registro interno tipo palabra (incluso de segmento) o una palabra en memoria Utilidad: Guardar en la pila datos para salvarlos temporalmente y as liberar recursos que son precisos para otras tareas. Pasar parmetros a un procedimiento. __________________________________________________

Mnemotcnico: POP Sintaxis: Operacin: POP destino destino palabra SS:[SP] SP SP+2

El operando destino puede ser un registro interno tipo palabra (incluso de segmento) o una palabra en memoria Utilidad: Recuperar datos previamente salvados en la pila

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (V) C) DE PILA (II): Mnemotcnico: PUSHF Sintaxis: Operacin: PUSHF SP SP-2 SS:[SP] registro de estado (PUSH Flags)

Utilidad: Salvaguardar el estado del procesador para poder restaurarlo posteriormente __________________________________________________

Mnemotcnico: POPF Sintaxis: Operacin: POPF

(POP Flags)

Registro de estado SS:[SP] SP SP+2

Utilidad: Restaurar el estado del procesador o forzar un cierto estado (es la nica manera de actuar sobre el registro de estado en su conjunto)

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (VI)

D) DE INTERCAMBIO: Mnemotcnico: XCHG Sintaxis: Operacin: (eXCHanGe)

XCHG operando_1, operando_2 operando_1 operando_2

E) DE ACCESO A TABLA: Mnemotcnico: XLAT Sintaxis: Operacin: XLAT AL DS:[BX+AL] (transLATe)

Utilidad: Permite resolver problemas mediante la tcnica de acceso a tabla (look-up tables). BX ha de apuntar al inicio de la tabla con las soluciones, y AL es el dato original utilizado como ndice de acceso

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (VII)

F) DE ENTRADA O SALIDA Mnemotcnico: IN Sintaxis: Operacin: IN acumulador, puerto acumulador puerto

Acumulador es o AL (entrada de octeto) o AX (entrada de palabra). Puerto es o un valor directo de tamao octeto (direccin de puerto desde el 0 hasta el 255) o DX. En este ltimo caso DX hace las veces de un puntero al puerto utilizado para la entrada (puertos desde el 0 hasta el 65535). Utilidad: Permite realizar operaciones de entrada de datos desde la unidad de entradas/salidas (lectura de los registros de los dispositivos perifricos: de entrada de datos o de estado del perifrico)

Mnemotcnico: OUT Sintaxis: Operacin: OUT puerto, acumulador puerto acumulador

Acumulador y Puerto es lo mismo que en IN. Utilidad: Permite realizar operaciones de salida de datos hacia la unidad de entradas/salidas (escritura de los registros de los dispositivos perifricos: de salida de datos o de control del perifrico)

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (VIII)

G) DE DIRECCIONES LGICAS (SLO PARTE DE DESPLAZAMIENTO) Mnemotcnico: LEA (Load Efective Address)

Sintaxis: Operacin:

LEA destino_reg16, origen reg16 palabra formada a partir de origen

El operando origen sigue el patrn de cualquier direccionamiento de la memoria, pero no se usa para direccionar la memoria sino para especificar una palabra que es la direccin efectiva objeto de transferencia. Utilidad: Se usa para iniciar registros punteros (aunque tambin de cualquier otro tipo) de una manera flexible.

Ejemplo: LEA SI, [BX+8] Si BX=1000 entonces el resultado es SI 1008

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (IX)

G) DE DIRECCIONES LGICAS COMPLETAS Mnemotcnico: LDS Sintaxis: Operacin: (Load Data Segment)

LDS destino_reg16, fuente_mem reg16 palabra en dir. efec. fuente_mem DS palabra en dir. efec. fuente_mem+2

Fuente_mem es un direccionamiento de la memoria. A partir de la direccin efectiva de la memoria se encuentra una doble palabra que es una direccin lgica completa (desplazamiento y segmento, en este orden). La parte de desplazamiento se mete en el registro destino tipo palabra, y la parte de segmento se mete en el registro DS. Utilidad: rpida iniciacin de un puntero y el registro segmento de datos, para as poder trabajar con datos Ejemplo: LDS SI, [BX] SI palabra en memoria apuntada por BX DS palabra en memoria apuntada por BX+2 Esa doble palabra en memoria es una direccin lgica completa.

Mnemotcnico: LES Sintaxis: Operacin:

(Load Extra Segment)

LES destino_reg16, fuente_mem reg16 palabra en dir. efec. fuente_mem ES palabra en dir. efec. fuente_mem+2

Utilidad: Similar a LDS, pero para trabajar en el espacio de datos extra.

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE TRANSFERENCIA (X)

H) CON EL REGISTRO DE ESTADO (OCTETO BAJO) Mnemotcnico: LAHF Sintaxis: Operacin: LAHF AH octeto bajo del registro de estado (Load AH with Flags)

La parte baja del registro de estado es la que tiene las banderas de acarreo (bit 0), paridad (bit 2), acarreo auxiliar (bit 4), resultado cero (bit 6) y signo (bit 7).

Mnemotcnico: SAHF Sintaxis: Operacin: SAHF

(Save AH in Flags)

octeto bajo del registro de estado AH

Utilidad: Aparte de la que pueda tener para la manipulacin de varias banderas, el origen de estas instrucciones est en el deseo de facilitar la migracin del software 8085 a 8086.

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES LGICAS:
A) SUMA LGICA: OR

LA UTILIDAD ES LA PUESTA A 1 LGICO DE BITS SELECCIONADOS DE UN OPERANDO

B) PRODUCTO LGICO:

AND

LA UTILIDAD ES LA PUESTA A 0 LGICO DE BITS SELECCIONADOS DE UN OPERANDO, AS COMO UN PASO PREVIO PARA LA EVALUACIN DE BITS INDIVIDUALES DE UN OPERANDO

C) SUMA LGICA EXCLUSIVA:

XOR

LA UTILIDAD ES LA INVERSIN LGICA DE BITS SELECCIONADOS DE UN OPERANDO

D) NEGACIN:

NOT

LA UTILIDAD ES LA NEGACIN DE UN OPERANDO

E) COMPROBACIN DE BITS

TEST

LA UTILIDAD ES, COMO CON AND, PERMITIR LA EVALUACIN DE BITS INDIVIDUALES DE UN OPERANDO, PERO SIN QUE STE SE VEA AFECTADO

Sintaxis: NOT operando (no afecta a las banderas) Sintaxis: OR/AND/XOR/TEST destino, origen Operacin de OR, AND, XOR y TEST: La operacin lgica bit a bit entre los del operando destino y los del origen (usado como mscara), quedando el resultado en el operando destino, salvo en el caso de la instruccin TEST, en que el resultado se pierde. El registro de estado, siempre, refleja las cualidades del resultado (bits S, Z y P, mientras que O0, C0, A?).

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES ARITMTICAS:
A) SUMA SIN Y CON ACARREO: B) RESTA SIN Y CON PRSTAMO: ADD / ADC SUB / SBB

C) INCREMENTO Y DECREMENTO: D) NEGATIVACIN: E) PRODUCTO SIN Y CON SIGNO:

INC / DEC NEG MUL / IMUL

F) DIVISIN SIN Y CON SIGNO:

DIV / IDIV

G) AJUSTE BCD: PARA LA SUMA (BCD empaqueta.): DAA (Decimal Adjust for Addition) PARA LA RESTA (dem): DAS (Decimal Adjust for Subtraction) PARA LA SUMA (BCD desempaq.): AAA (Ascii Adjust for Addition) PARA LA RESTA (dem): AAS (Ascii Adjust for Subtraction) PARA LA MULTIPLICACIN (dem): AAM (Ascii Adjust for Multiplication) PARA LA DIVISIN (dem): AAD (Ascii Adjust for Division)

H) EXTENSIN DE SIGNO: DE OCTETO A PALABRA:

CBW (Convert Byte in Word)

DE PALABRA A DOBLE PALABRA: CWD (Convert Word in Double word)

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES ARITMTICAS (II) ADD ADC SUB SBB destino, origen destino, origen destino, origen destino, origen (destinodestino+origen) (destinodestino+origen+C) (destinodestino origen) (destinodestino origen C) (operandooperando+1) (operandooperando 1) (AXAL*operando_8, sin signo) (DXAXAX*operando_16, dem) (AXAL*operando_8, con signo) (DXAXAX*operando_16, dem) (ALAXoperando_8, sin signo) (AH resto de la divisin) (AXAXoperando_16, dem) (DX resto de la divisin) (AXALoperando_8, con signo) (AH resto de la divisin) (DXAXAXoperando_16, dem) (DX resto de la divisin) (AH extensin del signo de AL) (DX extensin del signo de AX)

INC DEC

operando operando

MUL MUL IMUL IMUL DIV DIV IDIV IDIV

operando_8 operando_16 operando_8 operando_16 operando_8 operando_16 operando_8 operando_16

CBW CWD

DAA, DAS, AAA, AAS y AAM trabajan con el dato en AL AAD trabaja con los datos BCD desempaquetados en AH y AL

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE COMPARACIN:
LAS INSTRUCCIONES DE COMPARACIN SON INSTRUCCIONES DE RESTA ARITMTICA, AUNQUE EL RESULTADO DE LA RESTA SE PIERDE QUEDANDO INAFECTADO EL OPERANDO DESTINO. LAS BANDERAS DEL REGISTRO DE ESTADO INFORMAN SOBRE LAS CUALIDADES DEL RESULTADO, PUDINDOSE UTILIZARLAS COMO CONDICIN EN LAS INSTRUCCIONES DE BIFURCACIN CONDICIONADA.

A) COMPARACIN NORMAL Sintaxis: CMP operando_1, operando_2 Operacin: operando_1 operando_2

CMP

B) COMPARACIN DE CADENAS Sintaxis: SCASB Operacin: AL byte ptr ES:[DI] Sintaxis: SCASW Operacin: AX word ptr ES:[DI] y y

SCAS y CMPS

DIDI 1

DIDI 2

Sintaxis: CMPSB Operacin: byte ptr DS:[SI] byte ptr ES:[DI] Sintaxis: CMPSW Operacin: word ptr DS:[SI] word ptr ES:[DI] y DIDI 2 y DIDI 1

Utilidad de SCAS: encontrar el inicio de una cadena en otra Utilidad de CMPS: comparar dos cadenas

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE ROTACIN Y DE DESPLAZAMIENTO:

A) ROTACIN EXISTEN VARIOS ASPECTOS A CONSIDERAR: SENTIDO DE LA ROTACIN: - IZQUIERDA: ROL y RCL - DERECHA: ROR y RCR

PAPEL DE LA BANDERA DE ACARRERO, C: - TESTIGO DEL LTIMO BIT SALIENTE: - PARTE DEL OPERANDO A ROTAR: ROL y ROR RCL y RCR

B) DESPLAZAMIENTO EXISTEN VARIOS ASPECTOS A CONSIDERAR: SENTIDO DEL DESPLAZAMIENTO: - IZQUIERDA: SHL - DERECHA: SHR y SAR

CONSERVACIN O NO DEL BIT DE SIGNO: - DESPLAZAMIENTO ARITMTICO: SAR - DESPLAZAMIENTO LGICO: SHL y SHR

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE ROTACIN (II)

Sintaxis:

MNEMOTCNICO MNEMOTCNICO

operando, 1 operando, CL

Si se utiliza CL como indicador del factor de rotacin, CL no se ve afectado una vez hecha la operacin. La bandera de acarreo, C, siempre acta como testigo del ltimo bit rotado

A) ROTACIN SIMPLE:

ROL y ROR (ROtate Left, ROtate Right)

B) ROTACIN A TRAVS DEL ACARREO: RCL y RCR (Rotate through Carry Left, Rotate through Carry Right)

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE DESPLAZAMIENTO (III)

Sintaxis:

MNEMOTCNICO MNEMOTCNICO

operando, 1 operando, CL

Si se utiliza CL como indicador del factor de desplazamiento, CL no se ve afectado una vez hecha la operacin. La bandera de acarreo, C, siempre acta como testigo del ltimo bit desplazado

C) DESPLAZAMIENTO LGICO:

SHL y SHR (SHift Left, SHift Right)

0 C

0 C

D) DESPLAZAMIENTO ARITMTICO:

SAR (Shift Arithmetic Right)

Bit ms significativo

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE CONTROL DEL FLUJO DE PROGRAMA:

A) SALTO INCONDICIONAL JMP B) BIFURCACIN CONDICIONADA Jcondicion C) LLAMADA Y RETORNO DE PROCEDIMIENTO CALL RET (RETurn) RETF (RETurn Far) D) PETICIN Y RETORNO DE INTERRUPCIN INT (INTerrupt) IRET (Interrupt RETurn) E) CONTROL DE UN BUCLE GENRICO: LOOP, LOOPE y LOOPNE PREFIJOS DE REPETICIN: REP, REPE y REPNE (JuMP)

A) SALTO INCONDICIONAL:

Sintaxis:

JMP

direccin

La direccin puede expresarse con cualquiera de los modos de direccionamiento de datos, pero teniendo en cuenta que lo que se expresa es la direccin efectiva: Direccin directa Direccin por registro Direccin indirecta etctera

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE CONTROL DE FLUJO DE PROGRAMA (II)

B) BIFURCACIN CONDICIONADA ESTAS INSTRUCCIONES SLO ADMITEN SALTOS RELATIVOS AL CONTADOR DEPROGRAMA EL RANGO DEL SALTO EST RESTRINGIDO A +127 Y 128 POSICIONES DE MEMORIA CON RESPECTO A LA DEL SALTO (A PARTIR DEL 80386 SON POSIBLES SALTOS RELATIVOS DE MAGNITUD 16 BITS CON SIGNO)

Sintaxis: MNEMOTCNICO

direccin_del_salto

SALTOS PRECISOS TRAS EVALUAR DOS MAGNITUDES: CONDICIN MAYOR DATOS SIN SIGNO JA JNBE MAYOR O IGUAL IGUAL DISTINTO MENOR O IGUAL MENOR JAE JNB JE JNE JBE JNA JB JNAE DATOS CON SIGNO JG JNLE JGE JNL JE JNE JLE JNG JL JNGE

(*) COMO PUEDE OBSERVARSE, HAY INSTRUCCIONES QUE PUEDEN RECIBIR DISTINTO NOMBRE MNEMOTCNICO SEGN EL PUNTO DE VISTA QUE SE UTILICE. POR EJEMPLO, JA Y JNBE

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIN JO JNO JB JC JNAE JAE JNB JE JZ JNE JNZ JBE JNA JA JNBE JS JNS JP JPE JNP JPO JL JNGE JGE JNL JLE JNG JG JNLE JCXZ

Operacin: saltar si... si hay rebosamiento si no hay rebosamiento si es menor (sin signo) si hay acarreo si no es mayor ni igual (sin signo) si es mayor o igual (sin signo) si no es menor (sin signo) si es igual si el resultado es cero si no es igual si el resultado no es cero si es menor o igual (sin signo) si no es mayor (sin signo) si es mayor (sin signo) si no es menor ni igual (sin signo) si es negativo si es positivo si P est activa si la paridad es par si P no est activa si la paridad es impar si es menor (con signo) si no es mayor ni igual (con signo) si es mayor o igual (con signo) si no es menor (con signo) si es menor o igual (con signo) si no es mayor (con signo) si es mayor (con signo) si no es menor ni igual (con signo) Si CX vale cero

Condicin O=1 O=0 C=1 C=0 Z=1 Z=0 C=1 Z=1 C=1 y Z=0 S=1 S=0 P=1 P=0 S=1 y O=1 S=O Z=1 (S=O=1) Z=0 S=0 CX=0

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIN JO JNO JB JC JNAE JAE JNB JE JZ JNE JNZ JBE JNA JA JNBE JS JNS JP JPE JNP JPO JL JNGE JGE JNL JLE JNG JG JNLE JCXZ

Significado del mnemotcnico Jump if Overflow Jump if Not Overtflow Jump if Below Jump if Carry Jump if Not Above or Equal Jump if Above or Equal Jump if Not Below Jump if Equal Jump if Zero Jump if Not Equal Jump if Not Zero Jump if Below ot Equala Jump if Not Above Jump if Above Jump if Not Below or Equal Jump if Sign Jump if Not Sign Jump if Parity Jump if Parity Even Jump if Not Parity Jump if Parity Odd Jump if Less Jump if Not Greater or Equal Jump if Greater or Equal Jump if Not Less Jump if Less or Equal Jump if Not Greater Jump if Greater Jump if Not Less or Equal Jump if CX is Zero

Condicin O=1 O=0 C=1 C=0 Z=1 Z=0 C=1 Z=1 C=1 y Z=0 S=1 S=0 P=1 P=0 S=1 y O=1 S=O Z=1 (S=O=1) Z=0 S=0 CX=0

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE CONTROL DE FLUJO DE PROGRAMA (II) E) CONTROL DE BUCLES BUCLES GENRICOS LOOP direccin Operacin: CXCX-1 Si CX0 entonces bifurcar a direccin

LOOPE / LOOPZ Operacin:

direccin

(LOOP if Equal / Zero)

CXCX-1 Si CX0 y Z=1 entonces bifurcar a direccin

LOOPNE / LOOPNZ Operacin:

direccin

(LOOP if Not Equal / Zero)

CXCX-1 Si CX0 y Z=0 entonces bifurcar a direccin

BUCLES MONOINSTRUCCIN (DE CADENAS) (PREFIJOS DE REPETICIN) REP Operacin: (REPeat) CXCX-1 Si CX0 entonces repetir instruccin MOVS o STOS (REPeat if Equal / Zero) CXCX-1 Si CX0 y Z=1 repetir instruccin CMPS o SCAS (REPeat if Not Equal/Zero)

REPE / REPZ Operacin:

REPNE / REPNZ Operacin:

CXCX-1 Si CX0 y Z=0 repetir instruccin CMPS o SCAS

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

INSTRUCCIONES DE CONTROL DEL SISTEMA


ESTAS INSTRUCCIONES CARECEN DE OPERANDO EXPLCITO INSTRUCCIN CLC STC CMC CLI STI CLD STD NOP ESC OPERACIN Desactivar el acarreo Activar el acarreo Complementar el acarreo Inhibir las interrupciones Habilitar las interrupciones Borrar la direccin (incremento) Activar la direccin (decremento) No hacer nada Prefijo para instrucciones de un coprocesador (matemtico, etc). Esa instruccin ser ignorada por la UCP Detencin del procesador. Slo se puede salir de este estado reiniciando el procesador Activacin de la seal LOCK. til en sistemas multiprocesadores Espera hasta la activacin de la seal TEST EFECTO C 0 C 1 C!C I0 I1 D0 D1 -------

HLT

LOCK

WAIT

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

RESUMEN DEL REPERTORIO DE INSTRUCCIONES 8086


GRUPO INSTRUCCIN DESCRIPCIN Genrica Movimiento de cadenas Carga en acum. (cadenas) Guarda acum. (cadenas) De pila (meter y sacar) Id. (registro de estado) Intercambio De acceso a tabla De registro de estado De direcciones De entrada y salida Producto lgico Suma lgica Suma lgica exclusiva Negacin (inversin) Comprobacin Suma (sin y con acarreo) Resta (sin y con prstamo) Negativacin Incremento y decremento Multiplicacin (s/c signo) Divisin (sin/con signo) Ajuste BCD (empaqueta.) dem (desempaquetado) Extensin de signo Comparacin Acumulador con cadena Dos cadenas Rotaciones varias Desplazamientos varios Salto incondicional Saltos condicionados Llamada a subrutina Retorno de subrutina Interrupcin, retorno Gestin de bucles dem (cadenas) Bandera de acarreo Bandera de interrupcin Bandera de direccin No operacin Escape Control hardware vario

MOV MOVSB, MOVSW LODSB, LODSW STOSB, STOSW PUSH, POP TRANSFERENCIA PUSHF, POPF XCHG XLAT SAHF, LAHF LEA, LDS, LES IN, OUT AND OR LGICAS XOR NOT TEST ADD, ADC SUB, SBB NEG INC, DEC ARITMTICAS MUL, IMUL DIV, IDIV DAA, DAS AAA, AAS, AAM, AAD CBW, CWD CMP COMPARACIN SCASB, SCASW CMPSB, CMPSW ROTACIN Y ROR, ROL, RCR, RCL DESPLAZAMIENTO SHR, SHL, SAR JMP Jcondicin CALL CONTROL DE RET, RETF FLUJO INT, IRET LOOP, LOOPE, LOOPNE REP, REPE, REPNE CLC, STC, CMC CLI, STI CONTROL DEL CLD, STD SISTEMA NOP ESC HLT, LOCK, WAIT

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Repertorio de instrucciones del microprocesador 8086

AMFC 26-III-2007 (Depto. de Arquitectura de Computadores, E. y T. E. UCO)

Das könnte Ihnen auch gefallen