5
Lo más leído
7
Lo más leído
10
Lo más leído
ARQUITECTURA DEL
MICROPROCESADOR 8088/8086
OBJETIVOS:
Al finalizar el estudiante
reconoce la arquitectura de
los microprocesadores Intel y
la función de los registros
internos.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 1
ANATOMÍA DEL PC
A grandes rasgos, podríamos decir que todos los miembros de la familia PC constan de un
procesador, chips de memoria y varios chips inteligentes o programables (que controlan dispositivos
externos, como la unidad de disco o el monitor, o ayudan al microprocesador a realizar sus tareas).
Todos los componentes del circuito principal, están situados en la placa principal o placa base. Otros
elementos importantes están situados en placas de expansión, que pueden ser conectadas a la placa
principal.
El microprocesador o unidad central de proceso (CPU, Central Process Unit) controla las operaciones
básicas del ordenador, enviando y recibiendo señales de control a través de un grupo de caminos
electrónicos llamados bus. A grandes rasgos, puede decirse que un bus es un conjunto de unos
pequeños cables que conducen bits de información. El número de “cables” que forman el bus se
denomina ancho de banda del bus.
Localizadas a lo largo del bus, están las puertas de entrada y salida (E/S ó I/O), que conectan la
memoria y los chips de apoyo al bus (CTR I/O, controladores de E/S). Los datos pasan a través de
estas puertas de E/S mientras viajan desde yhasta la CPU yotras partes
Gráficamente, el esquema básico de un PC se puede resumir de este modo:
Esquema de los componentes hardware básicos del PC
Como se observa, hay seis componentes básicos
1. Oscilador de reloj: es el encargado de dar un ritmo de funcionamiento al procesador y a
toda la circuitería en general; por lo tanto, determina la cantidad de instrucciones que el procesador
puede ejecutar por segundo.
2. CPU: Es el microcircuito al cual entran las instrucciones de código máquina y donde las mismas
son procesadas (ejecutadas).
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 2
3. Memoria: Está formada por una serie de chips donde se almacena toda la información del
sistema, lo cual incluye tanto al código (instrucciones) como los datos de cualquier tipo.
4. Bus de datos: Es el bus por donde se mueve la información digital que circula por todo el
sistema (memoria, puertos...), desplazándose principalmente entre la memoria y la CPU, y
viceversa. Este bus es de 16 bits en el 8086 (8 bits en el 8088 y
32 bits en 80386 y80486).
5. Bus de direcciones: Es el bus usado por la CPU para indicar a la memoria la posición en la que
está la información a la que se quiere acceder (ya sea para leerla o para escribir en ella). Una vez se
haya accedido a esa posición en la memoria, ésta enviará su contenido a través del mencionado bus
de datos. El bus de direcciones posee 20 bits de ancho de banda, por lo que se pueden indicar 220 =
1.048.576 posiciones de memoria distintas.
6. Bus de control: Este bus es el encargado de indicar al sistema tanto el tipo de información que
circula por el bus de datos en cada momento, como de sincronizar las señales que controlan el
funcionamiento de la circuitería del sistema.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 3
El microprocesador
El microprocesador o unidad central de proceso (CPU, Central Process Unit) es el chip que ejecuta los
programas. Lleva a cabo una gran variedad de cálculos, comparaciones numéricas y transferencia de
datos como respuesta a las peticiones de los programas almacenados en memoria.
Así, pues, la unidad central de proceso es el conjunto formado por la unidad control, la unidad de
proceso (o unidad aritmético lógica, ALU) y los registros.
Figura. Esquema básico de una CPU
La unidad de control es la que gobierna todo el funcionamiento del ordenador. Controla, paso a paso,
la ejecución de las instrucciones que se encuentran en memoria central y genera las órdenes necesarias
para el funcionamiento de la unidad de proceso y de los canales. Además, gobierna también la lectura
y escritura de instrucciones ydatos de la memoria central.
La unidad de proceso (ALU) es la que ejecuta las operaciones aritméticas y lógicas. Los registros son
dispositivos de un ordenador para el almacenamiento temporal de datos. Ambos se desarrollarán más
ampliamente en sesiones siguientes.
El microprocesador 8088, que es el que se va a considerar en este trabajo, es un
microprocesador de 16 bits que controla los ordenadores personales estándar de IBM. El 8086 difiere
del 8088 solamente en un detalle: utiliza un bus de datos de 16 bits en vez del bus de 8 bits del 8088.
A excepción de esa diferencia, se les considera prácticamente idénticos. Por ello, cada vez que se haga
referencia a uno de ellos, se pondrá 8086/8088 para indicar que esa referencia es válida para ambos
microprocesadores.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 4
Arquitectura Interna del 8088
Intel diseñó el 8088/8086 para realizar al mismo tiempo las principales funciones internas de
transferencia de datos y búsqueda de instrucciones. Para conseguir esto, el 8088 y el 8086
constan de dos procesadores interconectados en el mismo circuito integrado, ver figura
1. Una unidad está encargada de buscar instrucciones (BIU) y la otra de ejecutarlas (EU)
esto diferencia al 8088 de los microprocesadores anteriores (8080, 8085).
BUS DE DIRECCION
(20 BITS)
S
REGISTROS
GENERALES
AH AL
BH BL
CH CL
DH DL
SP
BP
DI
SI
BUS DE DATOS
CS
DS
SS
ES
IP
REGISTROS DE
COMUNICACION INTERNA
BUS DE DATOS
(8 BITS)
LOGICA
ALU
(16 BITS)
DE CONTROL
DE BUS
BUS 8088
REGISTROS TEMPORALES
COLA DE
INSTRUCCIONES
ALU SISTEMA DE
CONTROL DE
LA EU
BUS Q
(8 BITS)
1 2 3 4
BANDERAS
UNIDAD DE EJECUCIÓN
(EU)
UNIDAD DE INTERFAZ DE BUS
(BIU)
Figura 1. Arquitectura interna del 8088
En la figura 2 se ilustra una comparación operacional del 8085 con el 8088, la figura 2 (a)
muestra una operación normal del 8085. Note que la instrucción es traída de la memoria por
una operación de lectura de memoria, luego el 8085 ejecuta la instrucción, y el sistema de
memoria-bus esta ocioso. El 8088 hace uso de este tiempo de memoria-bus ocioso para
buscar la próxima instrucción mientras se está ejecutando la actual instrucción.
La figura 2 (b) muestra la secuencia de eventos para el 8088. Note que el bus siempre está
ocupado. (Generalmente, si existen momentos en que el bus esta ocioso pero no siempre).
Esto es debido a las dos unidades que componen al 8088 la Unidad de Ejecución (EU) y la
Unidad de Interfaz de Bus (BIU).
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 5
CPU
BUS
TRAER
OCUPADO
LEER
OCUPADO
EJECUTAR TRAER
OCUPADO
ESCRIBIR
OCUPADO
EJECUTAR
(a)
EU EJECUTAR EJECUTAR EJECUTAR
BIU TRAER LEER TRAER ESCRIBIR TRAER TRAER
BUS OCUPADO OCUPADO OCUPADO OCUPADO OCUPADO OCUPADO
(b)
Figura 2. (a) Operación del 8085 y actividad del bus (b) Operación de las unidades del 8088 y
actividad del bus.
Unidad de Interfaz de Bus (BIU): La BIU contiene una cola de instrucciones, un
controlador de bus, registros de segmento y el puntero de instrucción (IP). La principal
función de la BIU es mantener llena la cola de instrucciones, generar y aceptar señales de
control, proveer al sistema de direcciones de memoria y número de puerto de E/S además de
ser el mediador entre la Unidad de Ejecución (EU) y la memoria.
La BIU asegura que la cola de instrucciones este llena mediante la operación de traer la
próxima instrucción de un byte si la cola de instrucciones tiene espacio. Debido a que la
próxima instrucción a ejecutar esta dentro del microprocesador, la velocidad de ejecución de
programas es mucha más rápida en comparación a si cada instrucción a ejecutar fuese traída
directamente de memoria.
Unidad de Ejecución (EU): La función de la EU es sacar cada instrucción de la cola de
instrucciones y ejecutarla. La unidad de ejecución contiene una unidad aritmética y lógica
(ALU), un registro de instrucción y un arreglo de registros. La ALU realiza operaciones
aritméticas y lógicas sobre la memoria o sobre registros. El registro de instrucciones recibe
instrucciones de la cola de instrucción y son decodificadas a operaciones directas para la
unidad de ejecución. El arreglo de registros mantiene información temporalmente. También
contiene registros índices y punteros utilizados para direccionar el dato operando localizado en
la memoria.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 6
AH AL
BH BL
CH CL
DH DL
SP
BP
SI
DI
IP
CS
DS
SS
ES
Conjunto de Registros del 8088
El 8088 contiene 14 registros de 16 bits que se asocian a tres grupos: Registro de Propósito
General, Registros Punteros y de Índice y Registros de Segmentos. Además de estos tres
grupos de registros contiene un Registro de Banderas que indica el estado de la operación de
la unidad aritmética y lógica (ALU).
16 bits
8 bits 8 bits
AX Acumulador
BX Base
CX Contador
DX Datos
Puntero de Pila
Puntero de Base
Índice Fuente
Índice Destino
Puntero de
Instrucción
Segmento de Código
Segmento de Datos
Segmento de Pila
Segmento Extra
Registros de
propósito
general
Registros
Punteros y
de Índices
Registro de
Segmentos
BANDERAS Registro de Banderas
Figura 3. Conjunto de Registros del 8088.
Registros de Propósito General
Los registros de propósito general se utilizan de cualquier manera que el programador desee
(siempre y cuando sea permitido). Estos registros se utilizan como registros de 16 bits (AX,
BX, CX y DX) o como dos registros de 8 bits (AH, AL, BH, BL, CH, CL, DH y DL). La
principal función de los registros de propósito general de describe a continuación:
AX (Acumulador)-Generalmente utilizado para mantener temporalmente resultados
después de una operación aritmética o lógica.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 7
BX (Base)- Generalmente utilizado para mantener la dirección base de un dato localizado
en la memoria y también la dirección base de una tabla de datos referenciada por una
instrucción (XLAT).
CX (Contador)-Contador en ciertas instrucciones, tal como contador de corrimientos (CL)
y rotaciones, contador (CX) con la instrucción LOOP.
DX (Dato)-Un registro de propósito general que mantiene la parte más significativos del
producto después de una multiplicación de 16 bits, también los bits más significativos
del dividendo antes de una división, y el número del puerto de E/S en una instrucción de
E/S.
Registros Punteros y de Índice
Aunque los registros punteros y de índice también son de propósito general por naturaleza,
estos son más utilizados como índice o punteros a una localidad de memoria en muchas
instrucciones. Estos registros incluyen:
SP (Puntero de Pila)-Usado para direccionar datos de una pila de memoria, esta pila es
de tipo LIFO (last-in, first-out). Esto ocurre cuando una instrucción PUSH o POP es
ejecutada o cuando una subrutina es llamada mediante CALL y al retornar de una
subrutina con la instrucción RET.
BP (Puntero de Base)-Un puntero de propósito general utilizado para direccionar un
arreglo de datos en la pila.
SI (Índice Fuente)-Se utiliza para direccionar datos fuentes indirectamente mediante el
uso de instrucciones con cadenas.
DI (Índice Destino)-Normalmente utilizado para direccionar el destino de datos
indirectamente para instrucciones con cadenas.
IP (Puntero de Instrucción)-Usado para direccionar el próxima instrucción a ejecutar por
el 8088. La localidad actual de la próxima instrucción está formada por el contenido de
IP y CS 10H.
Registros de Segmentos
Un segmento de memoria es un bloque de 64K-bytes de memoria direccionado por un registro
especial llamado registro de segmento, la figura 4 muestra segmentos de memoria del 8088.
Cuatro segmentos diferentes pueden existir simultáneamente en el espacio de memoria: el
segmento de código, segmento de datos, segmento de pila y segmento extra. Los datos
son indexados o apuntados dentro de un segmento por los registros de índice, registros
punteros, registro base o puntero de instrucción.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 8
Cada registro de segmento mantiene una porción de 16-bits de la dirección de 20- bit de inicio
del segmento de 64K-bytes de memoria. Los 20 bits de la dirección está formada 00002 (0H)
colocado como el menos significativo del registro de segmento, esto equivale a multiplicar el
registro segmento por 10H.
Memoria
AFFFFH
A0000H
8FFFFH
80000H
3FFFFH
30000H
1FFFFH
10000H
SEGMENTO
DE
PILA
SEGMENTO
EXTRA
SEGMENTO
DE
DATOS
SEGMENTO
DE
CODIGO
SS
A000
ES
8000
DS
3000
CS
1000
Figura 4. Ejemplo que muestra el contenido de cada registro de segmento y la localidad
de la dirección del segmento direccionada por el registro de segmento.
Cada registro de segmento tiene una función especial y normalmente es asociada con uno o
más de los registros de índice o punteros. Para generar una localidad de memoria, el contenido
del registro de segmento contiene la parte de la dirección del segmento y se incrementa un
registro índice o puntero, el cual contiene el desplazamiento (offset). La figura 5 muestra una
dirección de memoria generada dentro de un segmento por la combinación del contenido del
registro de segmento y el desplazamiento almacenado en un registro índice o puntero y así
generar la dirección efectiva. La dirección efectiva es la suma de la dirección del segmento y
el desplazamiento. En el ejemplo de la figura 5, el registro se segmento (DS) contiene 1000H,
así que el segmento inicia en la localidad de memoria 10000H y el desplazamiento (0010H) que
está contenido en el registro base (BX), forman la dirección efectiva 10010H, o 1000H 10H
+ 0010H.
A continuación de describen cada uno de los segmento de memoria (no registros de
segmento) manejados por el 8088.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 9
CS (Segmento de Código)-Una sección de memoria de 64K-bytes que contiene el
programa o código. Este registro es cambiado siempre al ejecutarse una instrucción
CALL, JMP o RET. La dirección de la próxima instrucción a ejecutar es generada por
la suma del contenido del puntero de instrucción y el contenido de CS 10H.
10010
1000F
1000E
1000D
1000C
1000B
1000A
10009
10008
10007
Desplazamiento
BX
0010
10006
10005
10004
10003
10002
10001 DS
10000 1000
Figura 5. Mapa de memoria que muestra como la dirección 10010H es direccionada cuando DS=1000H y
BX contiene un desplazamiento de 0010H.
DS (Segmento de Datos)-Una sección de memoria de 64K-bytes que contiene los datos
direccionados por todas las instrucciones y modos de direccionamiento. Los datos
generalmente son movidos dentro o fuera de la memoria mediante el segmento de
datos. La dirección efectiva de un dato es generada por la suma del contenido de uno
de los registros índice o puntero (BX, SI o DI) y el contenido de DS 10H.
SS (Segmento de Pila)-Una sección de memoria de 64K-bytes usada pora la pila (stack)
tipo LIFO. La dirección efectiva de la pila es una combinación de los contenidos del
puntero de pila (SP) más SS 10H. Por ejemplo, si SS contiene 1000H y SP contiene
0000H, entonces la dirección de la pila es 10000H. Esta dirección también es escrita
como 1000:0000 que es: una dirección de segmento 1000H y un desplazamiento de
0000H. Los datos apuntados por la base (BP) normalmente se encuentran en el
segmento de pila.
ES (Segmento Extra)-Un segmento especial que normalmente se usa por instrucciones de
cadenas. Cuando una instrucción de cadena es ejecutada, la localidad del destino es
direccionada por el registro índice destino (DI) mas ES 10H, y la dirección fuente esta
direccionada por el registro índice fuente (SI) mas DS 10H.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 10
Registro de Banderas
El registro de banderas, también llamado registro de estado o palabra de estado, es un
registro de 16 bits y contiene información sobre el estado de operaciones de la unidad
aritmética y lógica, en la figura 6 muestra la posición relativa de cada bit de bandera y su
correspondiente letra que se utiliza para identificar cada bandera.
15 8 7 0
O D I T S Z A P C
Figura 6. Esquema del Registro de Banderas
Descripción de los bits de bandera:
C (Acarreo)-Indica un acarreo o un préstamo en el bit más significativo después de una
operación aritmética. Esta bandera también se modifica por algunas instrucciones de
corrimiento y rotación.
P (Paridad)-Se refiere a la paridad del resultado de una operación aritmética o lógica. Si
es resultado contiene un número par de unos, el bit de paridad es puesto en 1 indicando
paridad par; en otro caso se borra para indicar paridad impar.
A (Acarreo Auxiliar)-Representa un acarreo o préstamo entre medio-bytes de una
operación aritmética o lógica entre registros de 8 bits.
Z (Cero)-Indica que el resultado de una operación aritmética o lógica es cero (0). Si
Z=1, el resultado es 0.
S (Signo)-Indica el signo del resultado de una operación aritmética o lógica. Un 1 lógico
en la bandera de signo índica que el resultado es negativo.
T (Atrapar)-Causa que el 8088 entre a un estado de operación paso a paso para
depuración.
I (Habilitar Interrupciones)-Habilita o deshabilita la terminal INTR (requerimiento de
interrupción). Si I=1 entonces INTR está habilitada.
D (Dirección)-Selección el modo de operación de auto-incremento o auto-decremento
para el registro índice destino (ID) y el registro índice fuente (SI) en operaciones de
cadena. Si D=0, entonces SI y DI son incrementados durante la ejecución de una
instrucción de cadena.
O (Sobreflujo)-Se activa después de que en una operación aritmética de suma o resta ha
ocurrido un sobreflujo. Por ejemplo, si 7FH (+127) y 01H (+1) se suman, y se está
operando con números con signo, el resultado es 80H (-128). Debido a que -128 no
es un resultado correcto, la bandera O es puesta en 1 lógico para indicar un sobrefujo.
IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información
Arquitectura de Computadoras 11
CUESTIONARIO
1. ¿Con que otro nombre se le conoce al microprocesador?
2. ¿Cuáles son las partes de un microprocesador?
3. ¿Con que modelo y en qué año aparece el primer microprocesador?
4. ¿Cuáles son las características principales del microprocesador 8088?
5. ¿Cuáles son los registros principales del microprocesador 8088?
6. Describir la función de los registros principales del 8088
7. ¿Qué función cumple el registro puntero y el registro índice?
8. ¿Cuál es la función del registro de segmentos?
9. ¿Cuál es la función del registro de banderas?
10. ¿Cuáles son las instrucciones principales del microprocesador 8088/8086?

Más contenido relacionado

PPS
Evolucion de los microprocesadores
PPTX
Chipset
DOCX
Arquitectura de Von Neumann
PPTX
80286 80386-80486
PDF
Evolucion de los microprocesadores
PPTX
Microprocesador
PDF
Ejercicios muy básicos de redes
PPTX
Organización y arquitectura de computadores
Evolucion de los microprocesadores
Chipset
Arquitectura de Von Neumann
80286 80386-80486
Evolucion de los microprocesadores
Microprocesador
Ejercicios muy básicos de redes
Organización y arquitectura de computadores

La actualidad más candente (20)

PDF
automatas finitos
PDF
Tema 4: Procesamiento paralelo.
PPTX
Modelos de arquitecturas de computadoras
PPTX
Arquitecturas de computadoras
PPTX
Los sistemas operativos de Red
PPTX
Microprocesadores
DOCX
Mecanismo de sincronización de procesos
PPTX
Bus de datos, dirección y control
PDF
Fundamentos de la arquitectura del computador (melvin lopez)
PPTX
Estandares de Cableado Estructurado
PDF
maquinas de turing jflap
DOCX
Configuración servidores DCHP, DNS y HTTP - Cisco Packet Tracer
DOCX
Mapa conceptual sobre
PPTX
Máquinas de Turing - Tipos y Aplicaciones
PPTX
Fundamentos de redes: 6. Direccionamiento de la red ipv4
DOCX
Organismos de estandarización de redes
PDF
Ensamblador y lenguaje c
PDF
Interrupciones
PPT
Dispositivos de Red y las Capas de Operacion
PDF
Unidad de Control
automatas finitos
Tema 4: Procesamiento paralelo.
Modelos de arquitecturas de computadoras
Arquitecturas de computadoras
Los sistemas operativos de Red
Microprocesadores
Mecanismo de sincronización de procesos
Bus de datos, dirección y control
Fundamentos de la arquitectura del computador (melvin lopez)
Estandares de Cableado Estructurado
maquinas de turing jflap
Configuración servidores DCHP, DNS y HTTP - Cisco Packet Tracer
Mapa conceptual sobre
Máquinas de Turing - Tipos y Aplicaciones
Fundamentos de redes: 6. Direccionamiento de la red ipv4
Organismos de estandarización de redes
Ensamblador y lenguaje c
Interrupciones
Dispositivos de Red y las Capas de Operacion
Unidad de Control
Publicidad

Similar a 10 arquitectura intel 8086 (20)

PPTX
Arquitectura de Computadorasv
PPTX
upc algoritmos 02
 
PPTX
Microprocesadores
 
PPTX
Microprocesadores
 
PDF
Ensamblador
PDF
COMPONENTES BÁSICOS DE UN SISTEMA MS-DOS
PPT
El Microprocesador
PPTX
Microprocesadores
PPTX
Temas arquitectura interna 8086 8088 de 13-08-10
PPTX
Arquitectura del cpu
PDF
Microprocesadores
PPTX
Arquitectura del procesador
PPTX
Microprocesador 8080
PDF
microprocesador8080-131024151047-phpapp01.pdf
PDF
Trabajo final investigacion de las 4 unidades
DOC
Procesador intel 8086
DOC
Microprocesador y memorias 2 (1)
DOCX
Microprocesador
PPTX
MICROPROCESADORES
DOCX
Microprocesador
Arquitectura de Computadorasv
upc algoritmos 02
 
Microprocesadores
 
Microprocesadores
 
Ensamblador
COMPONENTES BÁSICOS DE UN SISTEMA MS-DOS
El Microprocesador
Microprocesadores
Temas arquitectura interna 8086 8088 de 13-08-10
Arquitectura del cpu
Microprocesadores
Arquitectura del procesador
Microprocesador 8080
microprocesador8080-131024151047-phpapp01.pdf
Trabajo final investigacion de las 4 unidades
Procesador intel 8086
Microprocesador y memorias 2 (1)
Microprocesador
MICROPROCESADORES
Microprocesador
Publicidad

Más de Johan Silva Cueva (20)

PDF
Solucionario PC1-Dispositivos de alta Tension.pdf
PDF
Analisis de Circuitos electricos.pdf
DOCX
Pregunta5 (1)
PDF
Guia3 emu8086 Arquitectura de computadoras
PPTX
Dispositivos de seguridad de la informacion
PPTX
El transistor bjt
PPTX
Polatizacion del transistor bjt
PDF
Filtros analogicos
PDF
Clase7 comandos de linux
PDF
Clase2 aritmetica binaria
PPTX
Tendencia de Microprocesadores y Motherboards Actuales
PPTX
Protocolos de comunicacion Industrial
PDF
Guia n10 conexion sql server 2012 y visual studio 2015 parte II
PDF
Guia n9 conexion sql server 2012 y visual studio 2015 parte I
PDF
Guia n5 normalizacion de base de datos
PDF
Guia n6 crear base de datos modo grafico
PDF
Guia n7 lenguaje de definicion de datos en sql server 2012
PDF
Guia n8 creacion de la bd e insertar registros en sql server 2012
PDF
Guia n1 fundamentos y evolucion de sistemas operativos
PDF
Guia n3 diseno modelo conceptual bd
Solucionario PC1-Dispositivos de alta Tension.pdf
Analisis de Circuitos electricos.pdf
Pregunta5 (1)
Guia3 emu8086 Arquitectura de computadoras
Dispositivos de seguridad de la informacion
El transistor bjt
Polatizacion del transistor bjt
Filtros analogicos
Clase7 comandos de linux
Clase2 aritmetica binaria
Tendencia de Microprocesadores y Motherboards Actuales
Protocolos de comunicacion Industrial
Guia n10 conexion sql server 2012 y visual studio 2015 parte II
Guia n9 conexion sql server 2012 y visual studio 2015 parte I
Guia n5 normalizacion de base de datos
Guia n6 crear base de datos modo grafico
Guia n7 lenguaje de definicion de datos en sql server 2012
Guia n8 creacion de la bd e insertar registros en sql server 2012
Guia n1 fundamentos y evolucion de sistemas operativos
Guia n3 diseno modelo conceptual bd

Último (20)

PPTX
Expo petroelo 2do ciclo.psssssssssssssptx
PPTX
TOPOGRAFÍA - INGENIERÍA CIVIL - PRESENTACIÓN
PDF
La 5ª Edición del Manual de Ingeniería de Sistemas ( SEH5E ) como base d...
PDF
silabos de colegio privado para clases tema2
PPTX
TRABAJOS DE ALTO RIESGO ELEC - LOTO.pptx
PPT
flujo de caja paa la evaluacion de proyectos
PPTX
PROCESOS DE REGULACION DE CRECIMIENTO.pptx
PDF
MODULO 1 Base Legal Nacional y sus aplicaciones.pdf
PDF
Diseño y Utiliación del HVAC Aire Acondicionado
PDF
Presentación Ejecutiva Minimalista Azul.pdf
PDF
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
PPTX
TECNOLOGIA EN CONSTRUCCION PUBLICO Y PRIVADA
PDF
Precomisionado de equipos introduccion.pdf
PPTX
EQUIPOS DE PROTECCION PERSONAL - LEY LABORAL.pptx
PDF
alimentos de bebidas45rtrtytyurrrr 1.pdf
PDF
METODOLOGÍA DE INVESTIGACION ACCIDENTES DEL TRABAJO.pdf
PDF
EVALUACIÓN 1_REFERENCIAPIR_FASE 1_2024.pdf
PPTX
TRABAJOS DE ALTO RIESGO IZAJE Y CALIENTE.pptx
DOCX
Manual de Capacitación suelos trabajo edwin varon.docx
PDF
Presentacion_Resolver_CEM_Hospitales_v2.pdf
Expo petroelo 2do ciclo.psssssssssssssptx
TOPOGRAFÍA - INGENIERÍA CIVIL - PRESENTACIÓN
La 5ª Edición del Manual de Ingeniería de Sistemas ( SEH5E ) como base d...
silabos de colegio privado para clases tema2
TRABAJOS DE ALTO RIESGO ELEC - LOTO.pptx
flujo de caja paa la evaluacion de proyectos
PROCESOS DE REGULACION DE CRECIMIENTO.pptx
MODULO 1 Base Legal Nacional y sus aplicaciones.pdf
Diseño y Utiliación del HVAC Aire Acondicionado
Presentación Ejecutiva Minimalista Azul.pdf
experto-gestion-calidad-seguridad-procesos-quimicos-industriales-gu.pdf
TECNOLOGIA EN CONSTRUCCION PUBLICO Y PRIVADA
Precomisionado de equipos introduccion.pdf
EQUIPOS DE PROTECCION PERSONAL - LEY LABORAL.pptx
alimentos de bebidas45rtrtytyurrrr 1.pdf
METODOLOGÍA DE INVESTIGACION ACCIDENTES DEL TRABAJO.pdf
EVALUACIÓN 1_REFERENCIAPIR_FASE 1_2024.pdf
TRABAJOS DE ALTO RIESGO IZAJE Y CALIENTE.pptx
Manual de Capacitación suelos trabajo edwin varon.docx
Presentacion_Resolver_CEM_Hospitales_v2.pdf

10 arquitectura intel 8086

  • 1. ARQUITECTURA DEL MICROPROCESADOR 8088/8086 OBJETIVOS: Al finalizar el estudiante reconoce la arquitectura de los microprocesadores Intel y la función de los registros internos.
  • 2. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 1 ANATOMÍA DEL PC A grandes rasgos, podríamos decir que todos los miembros de la familia PC constan de un procesador, chips de memoria y varios chips inteligentes o programables (que controlan dispositivos externos, como la unidad de disco o el monitor, o ayudan al microprocesador a realizar sus tareas). Todos los componentes del circuito principal, están situados en la placa principal o placa base. Otros elementos importantes están situados en placas de expansión, que pueden ser conectadas a la placa principal. El microprocesador o unidad central de proceso (CPU, Central Process Unit) controla las operaciones básicas del ordenador, enviando y recibiendo señales de control a través de un grupo de caminos electrónicos llamados bus. A grandes rasgos, puede decirse que un bus es un conjunto de unos pequeños cables que conducen bits de información. El número de “cables” que forman el bus se denomina ancho de banda del bus. Localizadas a lo largo del bus, están las puertas de entrada y salida (E/S ó I/O), que conectan la memoria y los chips de apoyo al bus (CTR I/O, controladores de E/S). Los datos pasan a través de estas puertas de E/S mientras viajan desde yhasta la CPU yotras partes Gráficamente, el esquema básico de un PC se puede resumir de este modo: Esquema de los componentes hardware básicos del PC Como se observa, hay seis componentes básicos 1. Oscilador de reloj: es el encargado de dar un ritmo de funcionamiento al procesador y a toda la circuitería en general; por lo tanto, determina la cantidad de instrucciones que el procesador puede ejecutar por segundo. 2. CPU: Es el microcircuito al cual entran las instrucciones de código máquina y donde las mismas son procesadas (ejecutadas).
  • 3. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 2 3. Memoria: Está formada por una serie de chips donde se almacena toda la información del sistema, lo cual incluye tanto al código (instrucciones) como los datos de cualquier tipo. 4. Bus de datos: Es el bus por donde se mueve la información digital que circula por todo el sistema (memoria, puertos...), desplazándose principalmente entre la memoria y la CPU, y viceversa. Este bus es de 16 bits en el 8086 (8 bits en el 8088 y 32 bits en 80386 y80486). 5. Bus de direcciones: Es el bus usado por la CPU para indicar a la memoria la posición en la que está la información a la que se quiere acceder (ya sea para leerla o para escribir en ella). Una vez se haya accedido a esa posición en la memoria, ésta enviará su contenido a través del mencionado bus de datos. El bus de direcciones posee 20 bits de ancho de banda, por lo que se pueden indicar 220 = 1.048.576 posiciones de memoria distintas. 6. Bus de control: Este bus es el encargado de indicar al sistema tanto el tipo de información que circula por el bus de datos en cada momento, como de sincronizar las señales que controlan el funcionamiento de la circuitería del sistema.
  • 4. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 3 El microprocesador El microprocesador o unidad central de proceso (CPU, Central Process Unit) es el chip que ejecuta los programas. Lleva a cabo una gran variedad de cálculos, comparaciones numéricas y transferencia de datos como respuesta a las peticiones de los programas almacenados en memoria. Así, pues, la unidad central de proceso es el conjunto formado por la unidad control, la unidad de proceso (o unidad aritmético lógica, ALU) y los registros. Figura. Esquema básico de una CPU La unidad de control es la que gobierna todo el funcionamiento del ordenador. Controla, paso a paso, la ejecución de las instrucciones que se encuentran en memoria central y genera las órdenes necesarias para el funcionamiento de la unidad de proceso y de los canales. Además, gobierna también la lectura y escritura de instrucciones ydatos de la memoria central. La unidad de proceso (ALU) es la que ejecuta las operaciones aritméticas y lógicas. Los registros son dispositivos de un ordenador para el almacenamiento temporal de datos. Ambos se desarrollarán más ampliamente en sesiones siguientes. El microprocesador 8088, que es el que se va a considerar en este trabajo, es un microprocesador de 16 bits que controla los ordenadores personales estándar de IBM. El 8086 difiere del 8088 solamente en un detalle: utiliza un bus de datos de 16 bits en vez del bus de 8 bits del 8088. A excepción de esa diferencia, se les considera prácticamente idénticos. Por ello, cada vez que se haga referencia a uno de ellos, se pondrá 8086/8088 para indicar que esa referencia es válida para ambos microprocesadores.
  • 5. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 4 Arquitectura Interna del 8088 Intel diseñó el 8088/8086 para realizar al mismo tiempo las principales funciones internas de transferencia de datos y búsqueda de instrucciones. Para conseguir esto, el 8088 y el 8086 constan de dos procesadores interconectados en el mismo circuito integrado, ver figura 1. Una unidad está encargada de buscar instrucciones (BIU) y la otra de ejecutarlas (EU) esto diferencia al 8088 de los microprocesadores anteriores (8080, 8085). BUS DE DIRECCION (20 BITS) S REGISTROS GENERALES AH AL BH BL CH CL DH DL SP BP DI SI BUS DE DATOS CS DS SS ES IP REGISTROS DE COMUNICACION INTERNA BUS DE DATOS (8 BITS) LOGICA ALU (16 BITS) DE CONTROL DE BUS BUS 8088 REGISTROS TEMPORALES COLA DE INSTRUCCIONES ALU SISTEMA DE CONTROL DE LA EU BUS Q (8 BITS) 1 2 3 4 BANDERAS UNIDAD DE EJECUCIÓN (EU) UNIDAD DE INTERFAZ DE BUS (BIU) Figura 1. Arquitectura interna del 8088 En la figura 2 se ilustra una comparación operacional del 8085 con el 8088, la figura 2 (a) muestra una operación normal del 8085. Note que la instrucción es traída de la memoria por una operación de lectura de memoria, luego el 8085 ejecuta la instrucción, y el sistema de memoria-bus esta ocioso. El 8088 hace uso de este tiempo de memoria-bus ocioso para buscar la próxima instrucción mientras se está ejecutando la actual instrucción. La figura 2 (b) muestra la secuencia de eventos para el 8088. Note que el bus siempre está ocupado. (Generalmente, si existen momentos en que el bus esta ocioso pero no siempre). Esto es debido a las dos unidades que componen al 8088 la Unidad de Ejecución (EU) y la Unidad de Interfaz de Bus (BIU).
  • 6. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 5 CPU BUS TRAER OCUPADO LEER OCUPADO EJECUTAR TRAER OCUPADO ESCRIBIR OCUPADO EJECUTAR (a) EU EJECUTAR EJECUTAR EJECUTAR BIU TRAER LEER TRAER ESCRIBIR TRAER TRAER BUS OCUPADO OCUPADO OCUPADO OCUPADO OCUPADO OCUPADO (b) Figura 2. (a) Operación del 8085 y actividad del bus (b) Operación de las unidades del 8088 y actividad del bus. Unidad de Interfaz de Bus (BIU): La BIU contiene una cola de instrucciones, un controlador de bus, registros de segmento y el puntero de instrucción (IP). La principal función de la BIU es mantener llena la cola de instrucciones, generar y aceptar señales de control, proveer al sistema de direcciones de memoria y número de puerto de E/S además de ser el mediador entre la Unidad de Ejecución (EU) y la memoria. La BIU asegura que la cola de instrucciones este llena mediante la operación de traer la próxima instrucción de un byte si la cola de instrucciones tiene espacio. Debido a que la próxima instrucción a ejecutar esta dentro del microprocesador, la velocidad de ejecución de programas es mucha más rápida en comparación a si cada instrucción a ejecutar fuese traída directamente de memoria. Unidad de Ejecución (EU): La función de la EU es sacar cada instrucción de la cola de instrucciones y ejecutarla. La unidad de ejecución contiene una unidad aritmética y lógica (ALU), un registro de instrucción y un arreglo de registros. La ALU realiza operaciones aritméticas y lógicas sobre la memoria o sobre registros. El registro de instrucciones recibe instrucciones de la cola de instrucción y son decodificadas a operaciones directas para la unidad de ejecución. El arreglo de registros mantiene información temporalmente. También contiene registros índices y punteros utilizados para direccionar el dato operando localizado en la memoria.
  • 7. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 6 AH AL BH BL CH CL DH DL SP BP SI DI IP CS DS SS ES Conjunto de Registros del 8088 El 8088 contiene 14 registros de 16 bits que se asocian a tres grupos: Registro de Propósito General, Registros Punteros y de Índice y Registros de Segmentos. Además de estos tres grupos de registros contiene un Registro de Banderas que indica el estado de la operación de la unidad aritmética y lógica (ALU). 16 bits 8 bits 8 bits AX Acumulador BX Base CX Contador DX Datos Puntero de Pila Puntero de Base Índice Fuente Índice Destino Puntero de Instrucción Segmento de Código Segmento de Datos Segmento de Pila Segmento Extra Registros de propósito general Registros Punteros y de Índices Registro de Segmentos BANDERAS Registro de Banderas Figura 3. Conjunto de Registros del 8088. Registros de Propósito General Los registros de propósito general se utilizan de cualquier manera que el programador desee (siempre y cuando sea permitido). Estos registros se utilizan como registros de 16 bits (AX, BX, CX y DX) o como dos registros de 8 bits (AH, AL, BH, BL, CH, CL, DH y DL). La principal función de los registros de propósito general de describe a continuación: AX (Acumulador)-Generalmente utilizado para mantener temporalmente resultados después de una operación aritmética o lógica.
  • 8. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 7 BX (Base)- Generalmente utilizado para mantener la dirección base de un dato localizado en la memoria y también la dirección base de una tabla de datos referenciada por una instrucción (XLAT). CX (Contador)-Contador en ciertas instrucciones, tal como contador de corrimientos (CL) y rotaciones, contador (CX) con la instrucción LOOP. DX (Dato)-Un registro de propósito general que mantiene la parte más significativos del producto después de una multiplicación de 16 bits, también los bits más significativos del dividendo antes de una división, y el número del puerto de E/S en una instrucción de E/S. Registros Punteros y de Índice Aunque los registros punteros y de índice también son de propósito general por naturaleza, estos son más utilizados como índice o punteros a una localidad de memoria en muchas instrucciones. Estos registros incluyen: SP (Puntero de Pila)-Usado para direccionar datos de una pila de memoria, esta pila es de tipo LIFO (last-in, first-out). Esto ocurre cuando una instrucción PUSH o POP es ejecutada o cuando una subrutina es llamada mediante CALL y al retornar de una subrutina con la instrucción RET. BP (Puntero de Base)-Un puntero de propósito general utilizado para direccionar un arreglo de datos en la pila. SI (Índice Fuente)-Se utiliza para direccionar datos fuentes indirectamente mediante el uso de instrucciones con cadenas. DI (Índice Destino)-Normalmente utilizado para direccionar el destino de datos indirectamente para instrucciones con cadenas. IP (Puntero de Instrucción)-Usado para direccionar el próxima instrucción a ejecutar por el 8088. La localidad actual de la próxima instrucción está formada por el contenido de IP y CS 10H. Registros de Segmentos Un segmento de memoria es un bloque de 64K-bytes de memoria direccionado por un registro especial llamado registro de segmento, la figura 4 muestra segmentos de memoria del 8088. Cuatro segmentos diferentes pueden existir simultáneamente en el espacio de memoria: el segmento de código, segmento de datos, segmento de pila y segmento extra. Los datos son indexados o apuntados dentro de un segmento por los registros de índice, registros punteros, registro base o puntero de instrucción.
  • 9. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 8 Cada registro de segmento mantiene una porción de 16-bits de la dirección de 20- bit de inicio del segmento de 64K-bytes de memoria. Los 20 bits de la dirección está formada 00002 (0H) colocado como el menos significativo del registro de segmento, esto equivale a multiplicar el registro segmento por 10H. Memoria AFFFFH A0000H 8FFFFH 80000H 3FFFFH 30000H 1FFFFH 10000H SEGMENTO DE PILA SEGMENTO EXTRA SEGMENTO DE DATOS SEGMENTO DE CODIGO SS A000 ES 8000 DS 3000 CS 1000 Figura 4. Ejemplo que muestra el contenido de cada registro de segmento y la localidad de la dirección del segmento direccionada por el registro de segmento. Cada registro de segmento tiene una función especial y normalmente es asociada con uno o más de los registros de índice o punteros. Para generar una localidad de memoria, el contenido del registro de segmento contiene la parte de la dirección del segmento y se incrementa un registro índice o puntero, el cual contiene el desplazamiento (offset). La figura 5 muestra una dirección de memoria generada dentro de un segmento por la combinación del contenido del registro de segmento y el desplazamiento almacenado en un registro índice o puntero y así generar la dirección efectiva. La dirección efectiva es la suma de la dirección del segmento y el desplazamiento. En el ejemplo de la figura 5, el registro se segmento (DS) contiene 1000H, así que el segmento inicia en la localidad de memoria 10000H y el desplazamiento (0010H) que está contenido en el registro base (BX), forman la dirección efectiva 10010H, o 1000H 10H + 0010H. A continuación de describen cada uno de los segmento de memoria (no registros de segmento) manejados por el 8088.
  • 10. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 9 CS (Segmento de Código)-Una sección de memoria de 64K-bytes que contiene el programa o código. Este registro es cambiado siempre al ejecutarse una instrucción CALL, JMP o RET. La dirección de la próxima instrucción a ejecutar es generada por la suma del contenido del puntero de instrucción y el contenido de CS 10H. 10010 1000F 1000E 1000D 1000C 1000B 1000A 10009 10008 10007 Desplazamiento BX 0010 10006 10005 10004 10003 10002 10001 DS 10000 1000 Figura 5. Mapa de memoria que muestra como la dirección 10010H es direccionada cuando DS=1000H y BX contiene un desplazamiento de 0010H. DS (Segmento de Datos)-Una sección de memoria de 64K-bytes que contiene los datos direccionados por todas las instrucciones y modos de direccionamiento. Los datos generalmente son movidos dentro o fuera de la memoria mediante el segmento de datos. La dirección efectiva de un dato es generada por la suma del contenido de uno de los registros índice o puntero (BX, SI o DI) y el contenido de DS 10H. SS (Segmento de Pila)-Una sección de memoria de 64K-bytes usada pora la pila (stack) tipo LIFO. La dirección efectiva de la pila es una combinación de los contenidos del puntero de pila (SP) más SS 10H. Por ejemplo, si SS contiene 1000H y SP contiene 0000H, entonces la dirección de la pila es 10000H. Esta dirección también es escrita como 1000:0000 que es: una dirección de segmento 1000H y un desplazamiento de 0000H. Los datos apuntados por la base (BP) normalmente se encuentran en el segmento de pila. ES (Segmento Extra)-Un segmento especial que normalmente se usa por instrucciones de cadenas. Cuando una instrucción de cadena es ejecutada, la localidad del destino es direccionada por el registro índice destino (DI) mas ES 10H, y la dirección fuente esta direccionada por el registro índice fuente (SI) mas DS 10H.
  • 11. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 10 Registro de Banderas El registro de banderas, también llamado registro de estado o palabra de estado, es un registro de 16 bits y contiene información sobre el estado de operaciones de la unidad aritmética y lógica, en la figura 6 muestra la posición relativa de cada bit de bandera y su correspondiente letra que se utiliza para identificar cada bandera. 15 8 7 0 O D I T S Z A P C Figura 6. Esquema del Registro de Banderas Descripción de los bits de bandera: C (Acarreo)-Indica un acarreo o un préstamo en el bit más significativo después de una operación aritmética. Esta bandera también se modifica por algunas instrucciones de corrimiento y rotación. P (Paridad)-Se refiere a la paridad del resultado de una operación aritmética o lógica. Si es resultado contiene un número par de unos, el bit de paridad es puesto en 1 indicando paridad par; en otro caso se borra para indicar paridad impar. A (Acarreo Auxiliar)-Representa un acarreo o préstamo entre medio-bytes de una operación aritmética o lógica entre registros de 8 bits. Z (Cero)-Indica que el resultado de una operación aritmética o lógica es cero (0). Si Z=1, el resultado es 0. S (Signo)-Indica el signo del resultado de una operación aritmética o lógica. Un 1 lógico en la bandera de signo índica que el resultado es negativo. T (Atrapar)-Causa que el 8088 entre a un estado de operación paso a paso para depuración. I (Habilitar Interrupciones)-Habilita o deshabilita la terminal INTR (requerimiento de interrupción). Si I=1 entonces INTR está habilitada. D (Dirección)-Selección el modo de operación de auto-incremento o auto-decremento para el registro índice destino (ID) y el registro índice fuente (SI) en operaciones de cadena. Si D=0, entonces SI y DI son incrementados durante la ejecución de una instrucción de cadena. O (Sobreflujo)-Se activa después de que en una operación aritmética de suma o resta ha ocurrido un sobreflujo. Por ejemplo, si 7FH (+127) y 01H (+1) se suman, y se está operando con números con signo, el resultado es 80H (-128). Debido a que -128 no es un resultado correcto, la bandera O es puesta en 1 lógico para indicar un sobrefujo.
  • 12. IESTP “María Rosario Araoz Pinto” Desarrollo de Sistemas de Información Arquitectura de Computadoras 11 CUESTIONARIO 1. ¿Con que otro nombre se le conoce al microprocesador? 2. ¿Cuáles son las partes de un microprocesador? 3. ¿Con que modelo y en qué año aparece el primer microprocesador? 4. ¿Cuáles son las características principales del microprocesador 8088? 5. ¿Cuáles son los registros principales del microprocesador 8088? 6. Describir la función de los registros principales del 8088 7. ¿Qué función cumple el registro puntero y el registro índice? 8. ¿Cuál es la función del registro de segmentos? 9. ¿Cuál es la función del registro de banderas? 10. ¿Cuáles son las instrucciones principales del microprocesador 8088/8086?