Intel 8086 y 8088

Keywords: Intel 8086 y 8088, 1978, Arquitectura (informática), Bit, Coma flotante, Ensamblador, Frecuencia del reloj, IBM PC

Los Intel 8086 e Intel 8088 (i8086, llamado oficialmente iAPX 86, e i8088) son dos microprocesadores de 16 bits diseñados por Intel en 1978, iniciadores de la arquitectura x86. La diferencia entre el i8086 y el i8088 es que el i8088 utiliza un bus externo de 8 bits, para poder emplear circuitos de soporte al microprocesador más económicos, en contraposición al bus de 16 bits del i8086.

Los i8086 e i8088 se basaron en el diseño del Intel 8080 y el Intel 8085, y de hecho son compatibles a nivel de ensamblador con el i8080. El conjunto de registros también es similar al del i8080, pero ampliados a 16 bits. Tanto el i8086 como el i8088 tienen cuatro registros generales de 16 bits, que también pueden ser accedidos como ocho registros de 8 bits, y cuatro registros índice de 16 bits (incluyendo el puntero de pila). Los registro de datos se usan a veces de forma implícita por las instrucciones, haciendo más difícil la organización de los registros para emplearlos con valores temporales.

Ambos microprocesadores tienen un rango de entrada/salida de 64 Kbytes e interrupciones vectorizadas fijas. La mayoría de las instrucciones solo pueden acceder a una posición de memoria, por lo que un operando debe ser forzosamente un registro. El resultado se almacena en uno de los operandos.

Los i8086 e i8088 también presentan cuatro registros de segmento, que se pueden establecer a partir de los registros índice. Debido a que el pueden direccionar hasta 1 MByte de memoria, para lo que son necesarios 20 bits, y a que sus registros son de 16 bits, es necesario emplear registros de segmento para acceder a toda la memoria. En lugar de suministrar los bits faltantes, como la mayoría de los procesadores segmentados, el i8086 y el i8088 desplazan un registro de segmento 4 bits hacia la izquierda y lo suman a la dirección de memoria, siendo el resultado la dirección efectiva. Esto suele ser considerado como un mal diseño, aunque puede ser aceptable, e incluso útil en el lenguaje ensamblador. Por contra, provoca confusión cuando se hace un uso extensivo de los punteros (como en el lenguaje C), debido a que es posible que dos punteros con diferentes valores apunten a la misma dirección de memoria. Peor aún, este esquema de registros solapados hace difícil expandir el mapa de memoria a más de 1 MByte, y de hecho, esto se cambió en el Intel 80286.

La frecuencia del reloj del i8086 e i8088 se sitúa entre 4,77 MHz y 10 MHz.

A continuación se muestra el número de ciclos, aproximados, necesarios para hacer algunas operaciones:

EA: tiempo necesario para calcular la dirección de memoria efectiva, que va de 5 a 12 ciclos.

Ambos microprocesadores no tienen ninguna instrucción de coma flotante, pero se les puede añadir un coprocesador matemático para añadirles dichas instrucciones. El Intel 8087 era el coprocesador matemático más común, pero otros fabricantes como Weitek ofrecían otras alternativas con mayor rendimiento.

Texto en negrita== Microordenadores que usan el i8086 o i8088 ==

El primer microordenador que usó en i8086 fue el Mycron 2000. También usó el i8086, el procesador de texto IBM Displaywriter. Por contra, el microordenador más importante de todos, el IBM PC, usó el Intel 8088.


Microprocesadores de Intel

4004 | 4040 | 8008 | 8080 | 8085 | 8086/8088 | iAPX 432 | 80186/80188 | 80286 | 80386 | 80486 | OverDrive | i860 | i960 | Pentium | Pentium Pro | Pentium II | Celeron | Xeon | Pentium III | Pentium 4 | Pentium M | Itanium | Itanium 2 | Pentium D

   (nota: las cursivas indican microprocesadores secundarios)

Keywords: Intel 8086 y 8088, 1978, Arquitectura (informática), Bit, Coma flotante, Ensamblador, Frecuencia del reloj, IBM PC