El procesador Intel 8086 introdujo la arquitectura x86 de 16 bits. Tenía instrucciones para cadenas de caracteres, registros con funciones específicas, y una frecuencia de reloj de 4.77 MHz. Estaba dividido en una unidad de ejecución y una unidad de interfaz de bus.
Procesador Intel 8086: Características y especificaciones del pionero de los microprocesadores de 16 bits
1. Procesador INTEL 8086
Los procesadores de 16 bits fueron una nueva generación de microprocesadores
desarrollados para reemplazar o completar a las microcomputadoras de 8 bits de los
años setenta, que fueron las que comenzaron la revolución de las microcomputadoras.
El 8086 fue diseñado para trabajar con lenguajes de alto nivel, disponiendo de un
soporte hardware con el que los programas escritos en dichos lenguajes ocupan un
pequeño espacio de código y pueden ejecutarse a gran velocidad. Esta concepción,
orientada al uso de compiladores, se materializa en un conjunto de facilidades y
recursos, y en unas instrucciones entre las que cabe destacar las que permiten efectuar
operaciones aritméticas de multiplicar y dividir, con y sin signo; las que manejan
cadenas de caracteres, etc
Frecuencia de reloj: 4.77 MHz
Conjunto de instrucciones: x86
Zócalo: 40pin DIP
El 8088 fue el microprocesador usado para el primer ordenador personal de IBM, el
IBMPC, que salió al mercado
Características del 8086:
• El 8086 dispone de instrucciones especiales para el tratamiento de cadenas de
caracteres.
• Los registros del 8086 tienen una misión específica, por lo que se podría decir
que cada uno de ellos tiene su propia personalidad, aunque varios comparten
tareas comunes.
• El encapsulado del 8086 está formado por 40 patillas, simplificando así el
hardware, aunque por contra, es necesario la multiplexación del bus de datos
2. con el de direcciones.
• El 8086 dispone de un conjunto de registros, denominados ‘cola de
instrucciones’, en el cual se van almacenando de forma anticipada los códigos
de las instrucciones, consiguiendo que este aumente su velocidad de trabajo
• Las 20 líneas del bus de direcciones sólo permiten direccionar una memoria
de 1 Megabyte.
• El 8086 requiere una señal de reloj exterior, siendo 5 y 8 Mhz las frecuencias
típicas de funcionamiento.
• El 8086 dispone de una arquitectura “pipe line”, es decir, que la CPU puede
seguir leyendo instrucciones en los tiempos en que el bus no se utiliza
La Unidad de Interfaz del Bus y la Unidad de ejecución:
Este microprocesador esta dividido en dos sub-procesadores. Por un lado está la
“Unidad de Ejecución” (EU) encargada de ejecutar las instrucciones, la cual posee una
ALU (unidad aritmético-lógica) con un registro de estado con varios flags asociados y
un conjunto de registros de trabajo, y por otro está la “Unidad de Interfaz de bus” (BIU)
encargada de la búsqueda de las instrucciones, ubicarlas en la cola de instrucciones
antes de su ejecución y facilitar el direccionamiento de la memoria, es decir, encargada
de acceder a datos e instrucciones del mundo exterior.
El 8086 contiene 14 registros de 16 bits, de los cuales, unos pertenecen a la EU,
que normalmente se suelen usar para direccionamiento, y otros pertenecen a la BIU.
3. Los registros del procesador, se dedican a almacenar posiciones de memoria ya que el
acceso a los registros es mucho mas rápido que los accesos a memoria, y se emplean
para controlar instrucciones en ejecución, manejar direccionamiento de memoria y
proporcionar capacidad aritmética. Los registros son direccionables por medio de un
nombre.
Velocidad
La frecuencia del reloj obscina entre se sitúa entre 4,77 MHz y 10 MHz
Coprocesador numérico
El 8086 no tenía ninguna instrucción de coma flotante y para realizar operaciones con
números reales se requerían bibliotecas con rutinas de software de coma flotante. Los
computadores con el 8086 generalmente tenían un socket de 40 pines en donde se podía
enchufar un coprocesador matematico opcional para tener capacidad de coma flotante
mucho más rápida basada en hardware/microcódigo.
4. Modos de direccionamiento
Estos procesadores tienen 27 modos de direccionamiento (una cantidad bastante más
grande que los microprocesadores anteriores) o reglas para localizar un operando de
una instrucción. Tres de ellos son comunes a microprocesadores
anteriores: direccionamiento inmediato (el operando es un número que se encuentra en
la misma instrucción), direccionamiento a registro (el operando es un registro del
microprocesador) y direccionamiento inherente (el operando está implícito en la
instrucción, por ejemplo, en la multiplicación uno de los operandos siempre es el
acumulador). El resto de los modos sirve para localizar un operando en memoria. Para
facilitar la explicación de estos modos, se pueden resumir de la siguiente manera:
Deben sumarse cuatro cantidades: 1) dirección de segmento, 2) dirección base, 3)
una cantidad índice y 4) un desplazamiento.La base se almacena en el registro base. El
índice se almacena en el registro índice
Además del segmento, base e índice, se usa un desplazamiento de 16 bits, 8 bits o 0 bits
(sin desplazamiento). Ésta es una cantidad estática que se fija al tiempo de ensamblado
(paso de código fuente a código de máquina) y no puede cambiarse durante la ejecución
del programa (a menos que el programa se escriba sobre sí mismo, lo que constituye una
práctica no aconsejada).
Todo esto genera los 24 modos de direccionamiento a memoria que se ven a continuación:
- Registro indirecto: 1) [BX], 2) [DI]. 3) [SI].
- Basado: 4) desp8[BX], 5) desp8[BP], 6) desp16[BX], 7) desp16[BP].
- Indexado: 8) desp8[SI], 9) desp8[DI], 10) desp16[SI], 11) desp16[DI].
- Basado-indexado: 12) [BX+SI], 13) [BX+DI], 14) [BP+SI], 15) [BX+DI].
- Basado-indexado con desplazamiento: 16) desp8[BX+SI], 17) desp8[BX+DI], 18)
desp8[BP+SI], 19) desp8[BX+DI], 20) desp16[BX+SI], 21) desp16[BX+DI], 22)
desp16[BP+SI], 23) desp16[BX+DI].
- Directo: 24) [desp16].