Documentos de Académico
Documentos de Profesional
Documentos de Cultura
FORMATO DE TAREA
I. PORTADA
Módulo y Docente:
II. TAREA N° 1
1. PP
2. YY
2.1 Tema
2.2 Objetivos
2.2.1 Objetivo General
Investigar para que sirve cada instrucción que viene en el software emu8086.
Comprender cada instrucción en sintaxis y semántica para su adecuado uso.
Elaborar ejemplos prácticos en el software emu8086 para una mejor
apreciación del código.
Instrucciones del
Microprocesador 8086
• Instrucciones de transferencia:
Ninguna instrucción de transferencia afecta al registro de estado (salvo las explícitas con
el registro de estado)
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
A) GENÉRICAS MOV
A) GENÉRICAS:
POSIBLES COMBINACIONES:
(*) 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.
A) DE CADENAS (I):
UTILIDAD:
Datos o elementos de una cadena, lista o vector sin tener que actualizar de manera
explícita, por programa, el hipotético puntero utilizado para el acceso.
Sintaxis: LODSB
Operación: AL Å DS:[SI]
Sintaxis: LODSW
Operación: AX Å DS:[SI]
B) DE CADENAS (II):
Sintaxis: STOSB
Operación: DS:[DI] Å AL
DI Å DI+K (K= 1 si bandera D=0
K=-1 si bandera D=1)
Sintaxis: STOSW
Operación: DS:[DI] Å AX
Sintaxis: MOVSB
Sintaxis: MOVSW
C) DE PILA (I):
Mnemotécnico: PUSH
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
Operación: SP Å SP-2
El operando origen puede ser una palabra inmediata, un registro interno tipo palabra
(incluso de segmento) o una palabra en memoria
Utilidad:
SP Å SP+2
El operando destino puede ser un registro interno tipo palabra (incluso de segmento) o
una palabra en memoria.
Utilidad:
C) DE PILA (II):
Sintaxis: PUSHF
Operación: SP Å SP-2
Utilidad:
Sintaxis: POPF
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).
C) De intercambio:
D) De acceso a tabla:
Sintaxis: XLAT
Operación: AL Å DS:[BX+AL]
Utilidad:
C) De entrada o salida
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
Mnemotécnico: IN
Utilidad:
Mnemotécnico: OUT
Utilidad:
Utilidad:
Se usa para iniciar registros punteros (aunque también de cualquier otro tipo) de una
manera flexible.
Ejemplo:
Utilidad:
Rápida iniciación de un puntero y el registro segmento de datos, para así poder trabajar
con datos
Ejemplo:
Utilidad:
Sintaxis: LAHF
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).
Sintaxis: SAHF
Utilidad:
Aparte de la que pueda tener para la manipulación de varias banderas, el origen de estas
instrucciones está en el deseo de facilitar la migración del software 8085 a 8086.
• Instrucciones lógicas:
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
A) Suma lógica: OR
D) Negación: NOT
La operación lógica bit a bit entre los del operando destino y los del origen (usado
como máscara), quedando el resultado en el operando destino, salvo en el caso de
la instrucción TEST, en que el resultado se pierde.
El registro de estado, siempre, refleja las cualidades del resultado (bits S, Z y P, mientras
que OÅ0, CÅ0, AÅ?).
• INSTRUCCIONES ARITMÉTICAS:
D) Negativación: NEG
G) Ajuste bcd:
H) Extensión de signo:
• INSTRUCCIONES DE COMPARACIÓN:
Las banderas del registro de estado informan sobre las cualidades del resultado,
pudiéndose utilizarlas como condición en las instrucciones de bifurcación
condicionada.
Sintaxis: SCASB
Sintaxis: SCASW
Sintaxis: CMPSB
Sintaxis: CMPSW
A) Rotación
• SENTIDO DE LA ROTACIÓN:
- IZQUIERDA: SHL
MNEMOTÉCNICO operando, CL
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
La bandera de acarreo, C, siempre actúa como testigo del último bit rotado
MNEMOTÉCNICO operando, CL
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
A) Salto incondicional
JMP (JuMP)
B) Bifurcación condicionada
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
Jcondicion
E) Control de un bucle
Genérico: LOOP, LOOPE y LOOPNE
A) Aalto incondicional:
- Dirección directa
- Dirección por registro
- Dirección indirecta
- etcétera
B) Bifurcación condicionada
• 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
MAYOR
JG
JA JNBE
JNLE
MAYOR O
JGE
IGUAL JAE JNB
JNL
IGUAL JE JE
MENOR O
IGUAL JBE JNA JLE JNG
MENOR
JL
JB JNAE
JNGE
(*) Como puede observarse, hay instrucciones que pueden recibir distinto nombre
mnemotécnico según el punto de vista que se utilice. Por ejemplo, “ja” y “jnbe”
JS si es negativo S=1
JB Jump if Below
JC Jump if Carry C=1
JNAE Jump if Not Above or Equal
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
E) Control de bucles
UNIVERSIDAD TÉCNICA DE AMBATO
FACULTAD DE INGENIERÍA EN SISTEMAS, ELECTRÓNICA E INDUSTRIAL
PERÍODO ACADÉMICO: MARZO 2018 – AGOSTO 2018
• Bucles genéricos
LOOP dirección
Operación: CXÅCX-1
Operación: CXÅCX-1
Operación: CXÅCX-1
REP (REPeat)
Operación: CXÅCX-1
Operación: CXÅCX-1
Operación: CXÅCX-1
2.4 Conclusiones
Al investigar en fuentes confiables como lo es en google scholar y en bases de
datos se pudo encontrar información que es fiable para el estudio de las
instrucciones.
Una vez que se encontró información fiable fue un poco más rápido comprender
como se encuentra estructurada las instrucciones que intervienen en el software
enmu8086.
Comprendido cada parte de las diferentes instrucciones del software emu8086 se
logró realizar los ejemplos de acuerdo a cada instrucción y así tener un
conocimiento más amplio sobre cómo se debe utilizar las mismas para tener un
código eficiente.
Gonzales, Reinaldo Castro, Manuel Alejandro Mora Orozco, and Jorge Sequeira Rojas.
"DISEÑO DE UN JUEGO BASADO EN UN PROCESADOR x86 DESARROLLADO EN
FPGA."
Juárez, Irene Aguilar, and José Rubén Heredia Alonso. "Simuladores y laboratorios virtuales
para Ingeniería en Computación." Revista Iberoamericana para la Investigación y el
Desarrollo Educativo ISSN: 2007-2619 10 (2015).