Вы находитесь на странице: 1из 23

UNIVERSIDAD NACIONAL DE SAN AGUSTIN

Facultad de Ingeniera de Produccin y Servicios


Escuela Profesional De Ingeniera Electrnica

Curso

: Arquitectura de Computadoras (lab. 1)

Docente

: Ing. Erasmo Sulla Espinoza

Alumnos

ARANA MEDINA DIEGO HANS


CRUZ CACERES RUBEN
Arequipa 2015
Contenido
COMPUTADORA PERSONAL XT 8088...................................................................2
HISTORIA.......................................................................................................... 2
ESTRUCTURA....................................................................................................... 2
Como se observa, hay seis componentes bsicos:..........................................5
MICROPROCESADOR 8088.................................................................................. 5

ARQUITECTURA DE COMPUTADORAS

Primer microprocesador de propsito general cuyas principales


caractersticas son........................................................................................... 5
ESTRUCTURA INTERNA DEL 8088. PINES DEL IC 8088........................................8
Lneas comunes al modo mximo y mnimo del 8088.....................................8
Lneas exclusivas del modo mnimo del 8088.....................................................9
Status Line....................................................................................................... 9
Lneas exclusivas del modo mximo del 8088..................................................10
4.1 Introduccin............................................................................................. 11
REGISTROS DEL 8088....................................................................................... 13
REGISTROS DE PRPOPOSITO GENERAL..........................................................13
REGISTROS PUNTERO Y DE INDICE...................................................................14
REGISTRO DE SEGMENTO.............................................................................. 15
REGISTRO DE BANDERAS(flags)..................................................................15
FUNCIONAMIENTO............................................................................................. 16
MODOS DE DIRECCIONAMIENTO....................................................................16
LA PILA(STACK)................................................................................................. 17
INTERRUPCIONES........................................................................................... 18
VECTORES DE INTERRUPCION...........................................................................19
PROCESO DE ARRANQUE............................................................................... 20
EJECUCION DE PROGRAMAS.............................................................................. 21

COMPUTADORA PERSONAL XT 8088


HISTORIA
En junio de 1978 Intel lanz al mercado el primer microprocesador de 16 bits:
el 8086. En junio de 1979 apareci el 8088 (internamente igual que el 8086
pero con bus de datos de 8 bits) y en 1980 los coprocesadores 8087

P g i n a 2 | 23

ARQUITECTURA DE COMPUTADORAS

(matemtico) y 8089 (de entrada y salida). El primer fabricante que desarroll


software y hardware para estos chips fue la propia Intel. Reconociendo la
necesidad de dar soporte a estos circuitos integrados, la empresa invirti gran
cantidad de dinero en un gran y moderno edificio en Santa Clara, California,
dedicado al diseo, fabricacin y venta de sus sistemas de desarrollo que,
como se explic anteriormente, son computadoras autosuficientes con el
hardware y software necesario para desarrollar software de microprocesadores.
El desarrollo ms notable para la familia 8086/8088 fue la eleccin de la CPU
8088 por parte de IBM (International Business Machines) cuando en 1981 entr
en el campo de las computadoras personales. Esta computadora se desarroll
bajo un proyecto con el nombre "Acorn" (Proyecto "Bellota") pero se vendi
bajo un nombre menos imaginativo, pero ms correcto: "Computadora Personal
IBM" (PC IBM), con un precio inicial entre 1260 dlares y 3830 dlares segn la
configuracin (con 48KB de memoria RAM y una unidad de discos flexibles con
capacidad de 160KB costaba 2235 dlares). Esta computadora entr en
competencia directa con las ofrecidas por Apple (basado en el 6502) y por
Radio Shack (basado en el Z-80).

ESTRUCTURA
A grandes rasgos, podramos 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, estn situados en la placa principal o placa
base. Otros elementos importantes estn situados en placas de expansin, que
pueden ser conectadas a la placa principal.
La estructura fsica fundamental de los microcomputadores personales PC,
consta de 3 elementos:
Monitor
Teclado

P g i n a 3 | 23

ARQUITECTURA DE COMPUTADORAS

Unidad central
En el interior del armario, chasis o case de la unidad central se aloja la fuente
de alimentacin, la placa madre (mainboard), las unidades de discos y las
tarjetas de ampliacin necesarias para el desarrollo del trabajo especfico al
que se dedica la PC.
Las ranuras de expansin, proporcionan las lneas de buses de la CPU a todo
tipo de circuitos que se alojan en ellas con diversas finalidades, entre las que
destacan:
-

Ampliacin de memoria de la placa principal


Controlador de pantalla monocromo
Controlador de pantalla color / grficos
Controlador de discos flexibles o duros
Canal serie RS-232, propio de ciertos perifricos tal como el ratn
Canal paralelo, propio de las impresoras

La configuracin mnima de la PC incluye 64 Kb de RAM, 40 k de ROM, en


donde estn grabados los programas bsicos para el funcionamiento del
sistema, junto con las rutinas de control de E/S (BIOS) y en ciertos casos el
intrprete del lenguaje BASIC; solo hay una unidad de discos de 5 ; un
monito monocromo de 12, con una resolucin de 25 filas por 80 columnas en
modo texto y 640 x 200 en modo grfico y finalmente, un teclado
independiente, con 83 teclas.
En cuanto al software se incluye una versin del sistema operativo DOS y el
lenguaje interprete BASIC, grabado en la ROM. La configuracin mnima
indicada admite todo tipo de ampliaciones, como:

Memoria
Coprocesador matemtico 8087
Disco Duro
Pantallas de color y grficos
Impresoras
Otros sistemas operativos, como el CPM/86
Otros
lenguajes
(ensamblador,
compiladores,

BASIC,

PASCAL,

FORTRAN,COBOL,etc)

P g i n a 4 | 23

ARQUITECTURA DE COMPUTADORAS

La versin XT dispone de 8 zcalos para tarjetas de expansin y 8 micro


ruptores para configurar el sistema. El microprocesador o unidad central de
proceso (CPU, Central Process Unit) controla las operaciones bsicas del
ordenador, enviando y recibiendo seales de control a travs de un grupo de
caminos electrnicos llamados bus. A grandes rasgos, puede decirse que un
bus es un conjunto de unos pequeos cables que conducen bits de
informacin. El nmero de cables que forman el bus se denomina ancho de
banda del bus.
Localizadas a lo largo del bus, estn las puertas de entrada y salida (E/S o I/O),
que conectan la memoria y los chips de apoyo al bus (CTR I/O, controladores de
E/S). Los datos pasan a travs de estas puertas de E/S mientras viajan desde y
hasta la CPU y otras partes Grficamente, el esquema bsico de un PC se
puede resumir de este modo:

Como se observa, hay seis componentes bsicos:


Oscilador de reloj: es el encargado de dar un ritmo de funcionamiento al
procesador y a toda la circuitera en general; por lo tanto, determina la
cantidad de instrucciones que el procesador puede ejecutar por
segundo.

P g i n a 5 | 23

ARQUITECTURA DE COMPUTADORAS

CPU: Es el microcircuito al cual entran las instrucciones de cdigo


mquina y donde las mismas son procesadas (ejecutadas).
Memoria: Est formada por una serie de chips donde se almacena toda
la informacin del sistema, lo cual incluye tanto al cdigo (instrucciones)
como los datos de cualquier tipo.
Bus de datos: Es el bus por donde se mueve la informacin digital que
circula por todo el sistema (memoria, puertos...), desplazndose
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 y 80486).
Bus de direcciones: Es el bus usado por la CPU para indicar a la memoria
la posicin en la que est la informacin a la que se quiere acceder (ya
sea para leerla o para escribir en ella). Una vez se haya accedido a esa
posicin en la memoria, sta enviar su contenido a travs 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.
Bus de control: Este bus es el encargado de indicar al sistema tanto el
tipo de informacin que circula por el bus de datos en cada momento,
como de sincronizar las seales que controlan el funcionamiento de la
circuitera del sistema.

MICROPROCESADOR 8088
Primer microprocesador de propsito general cuyas principales
caractersticas son:
i.
ii.
iii.

Bus de datos de 8 bits.


Arquitectura interna de 16 bits.
Capacidad de direccionamiento de memoria hasta 1 Mbyte.

P g i n a 6 | 23

ARQUITECTURA DE COMPUTADORAS

iv.
v.
vi.
vii.

Compatibilidad de software con 8086.


Dos relojes para opresin: 5 MHz para 8088, 8 MHz para 8088-2.
Operaciones a nivel de byte, palabra y bloque.
24 modos de direccionamiento a memoria.

El 8088 puede trabajar en dos modos: mnimo (pequeas aplicaciones) y


mximo (sistemas multiprocesador). Los requerimientos de conexin con el
exterior cambian en funcin del modo que se decida emplear, aunque una
parte de las seales es comn en ambos.
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 clculos,
comparaciones numricas y transferencia de datos como respuesta a las
peticiones de los programas almacenados en memoria.

P g i n a 7 | 23

ARQUITECTURA DE COMPUTADORAS

Una unidad est encargada de buscar instrucciones (BIU) y la otra de


ejecutarlas (EU) esto diferencia al 8088 de los microprocesadores anteriores.
-

Unidad de interfaz de bus (BIU): La BIU contiene una cola de


instrucciones, unos controlados de bus, registros de segmento y el
puntero de instruccin (IP). Su principal funcin es mantener la cola llena
de instrucciones, generar y aceptar seales de control, proveer al
sistema de direcciones de memoria y numero de puerto de E/S adems
de ser el mediador entre la unidad de ejecucin y la memoria.

Unidad de ejecucin (EU): La funcin de la EU es sacar cada


instruccin de la cola de instrucciones y ejecutarla. Contiene una unidad
aritmtica y lgica (ALU), un registro de instruccin y un arreglo de
registros. La ALU realiza operaciones aritmticas y lgicas sobre la
memoria

sobre

registros.

El

registro

de

instrucciones

recibe

instrucciones de la cola de instruccin y son decodificadas a operaciones


directas para la unidad de ejecucin. El arreglo de registros mantiene la
informacin temporalmente. Tambin contiene registros ndices y
punteros utilizados para direccionar el dato operando localizado en la
memoria.
El microprocesador 8088 tiene la una distribucin de los terminales que se
muestra en la siguiente figura:

P g i n a 8 | 23

ARQUITECTURA DE COMPUTADORAS

ESTRUCTURA INTERNA DEL 8088. PINES DEL IC 8088


Lneas comunes al modo mximo y mnimo del 8088.
Address Data Bus. Son lneas multiplexadas, que pueden
AD7..0:

A15..8:

A19..16:
S6..3:

RD:

actuar como bus de datos o de direcciones, evidentemente en


tiempos distintos.
Address Bus. En todo momento almacenan la parte media del
bus de direcciones.
Address/Status. Parte

alta

del

bus

de

direcciones,

multiplexada: cuando no salen direcciones, la lnea S5 indica


el estado del bandern de interrupciones; las lneas S4:S3
informan del registro de segmento empleado para realizar el
acceso a memoria: 00-ES, 01-SS, 10-CS, 11-DS; S6 no se usa.
Read. Indica una lectura de memoria o de un dispositivo de

P g i n a 9 | 23

ARQUITECTURA DE COMPUTADORAS

READY:
INTR:

TEST:

NMI:
RESET:

entrada/salida.
Ready. Lnea de entrada que indica el final de la operacin de
memoria o E/S.
Interrupt Request.

Lnea

de

peticin

de

interrupciones

enmascarables; el 8088 la observa peridicamente.


Test. En respuesta a la instruccin mquina WAIT (no TEST!),
el 8088 se para a comprobar esta lnea hasta que se ponga a
0.
Non-maskable Interrupt. Lnea de peticin de la interrupcin
de tipo 2, que no puede ser enmascarada.
Provoca una inicializacin interna que culmina saltando a

FFFF: 0.
MN/-MX: Esta lnea indica si se trata de un sistema mnimo o mximo.

Lneas exclusivas del modo mnimo del 8088


Status Line. Indica si se trata de un acceso a memoria o a un
IO/-M:

WR:
INTA:

ALE:

puerto de entrada/salida. No es vlida todo el tiempo (solo a


ratos).
Write. Indica una escritura en memoria o en un dispositivo de
entrada/salida (segn el estado de IO/-M).
Interrupt Acknowledge. Es la seal de reconocimiento de
interrupcin (solicitada a travs de INTR o NMI).
Address Latch Enable. Indica al exterior que las lneas de
direccin contienen una direccin vlida, con objeto de que la
circuitera externa la almacene en una pequea memoria
(latch).
Data Transmit/Receive. Seal necesaria para emplear un

DT/-R:

DEN:

transceiver 8286/8287 en el bus, con objeto de controlar el


flujo de datos a travs del mismo (si se recibe/transmite).
Data Enable. Necesario tambin para emplear el transceiver:
sirve como entrada de habilitacin para el mismo.
Hold. Lnea de entrada para solicitar al 8088 que se

HOLD:

desconecte de los buses. Empleada por los controladores de

HLDA:

DMA.
Hold Acknowledge. Lnea complementaria de HOLD: el 8088

P g i n a 10 | 23

ARQUITECTURA DE COMPUTADORAS

enva una seal de reconocimiento cuando se desconecta del

SS0:

bus.
Status Line. Lnea de apoyo que, junto con IO/-M y DT/-R,
permite determinar con precisin el estado del bus:

Lneas exclusivas del modo mximo del 8088.


RQGT0..1:

Request/Grant. Estas patillas bidireccionales permiten a los


dems procesadores conectados al bus forzar al 8088 a que
libere el bus al final del ciclo en curso.
Lock. Lnea que sirve al 8088 para prohibir el acceso al bus a
otros procesadores (se activa tras la instruccin mquina LOCK

LOCK:

y dura mientras se ejecuta la siguiente instruccin -la que


sigue a LOCK, que es realmente un prefijo-). Tambin se activa
automticamente en los momentos crticos de un ciclo de

interrupcin.
QS1/QS Queue Status. Permite determinar el estado de la cola de
0:

instruc del 8088.

Muestra de una Mainboard XT con identificacin de


dispositivos Etiquetado y accesorios
4.

4.1 Introduccin

La primera tarjeta madre popular para PC fue, por supuesto, la PC, IBM
introdujo la tarjeta madre XT la cual tena bsicamente la misma forma de la de
PC aunque contaba con 8 ranuras, en lugar de las de 5 de la PC original.
Por otro lado, la XT elimino el extrao puerto para casetes de la parte trasera
del equipo, el cual se supona servira para guardar programas bsicos en
cinta, en lugar de hacerlo en el mucho ms costoso (en aquella poca) disco
flexible.
Intel ha desarrollado todos sus procesadores 486, Pentium mmx y Pentium
pro. Ms adelante sufri una modificacin cuando ibm la redujo el tamao de

P g i n a 11 | 23

ARQUITECTURA DE COMPUTADORAS

una xt en un sistema llamado xt-286. El tamao de esta tarjeta, era


prcticamente idntica al de la xt original y fue adoptado por la mayora de los
fabricantes de pc compatibles.

1 ranuras de expansin o slots pci.


2. puertos o coms para ratn (mouse) y/o mdem (modulador demodulador).
3. conector para teclado.
4. conectores p8 y p9.
5. ranuras de expansin o slots isa.
6. zcalos o bancos de memoria para simms.
7. conectores ide para discos duros o cds.
8. zcalos o bancos de memoria para dimms.
9. zcalo del microprocesador.
10. conector de discos flexibles.
11. bios o sistema bsico de entrada y salida.
12. chipset.
13. pila que alimenta al bios.

P g i n a 12 | 23

ARQUITECTURA DE COMPUTADORAS

REGISTROS DEL 8088


El 8088 contiene 14 registros de 16 bits que se asocian a tres grupos: registro
de propsito general, registro punteros, y de ndice y finalmente registros de
segmentos. Adems de estos tres grupos de registros contiene unos registros
de banderas (flags) que indican el estado de la operacin de la unidad
aritmtica y lgica (ALU).

P g i n a 13 | 23

ARQUITECTURA DE COMPUTADORAS

REGISTROS DE PRPOPOSITO GENERAL


- AX (registro Acumulador): Este registro es usado, sobre todo, en
operaciones aritmticas como primer operando y tambin como registro de
propsito general a disposicin del programador.
- BX (registro Base): Se usa principalmente para indicar posiciones de
memoria (offset).
- CX (registro Contador): Este registro se usa siempre que se necesite un
contador en operaciones repetitivas y bucles.

P g i n a 14 | 23

ARQUITECTURA DE COMPUTADORAS

- DX (registro Dato): Se usa como registro auxiliar en operaciones


aritmticas y como contenedor de datos a la hora de usar instrucciones de
comunicacin de puertos.
Estos cuatro registros, como todos los restantes, son de 16 bits, pero para
permitir la realizacin de operaciones de tipo byte (8 bits) cada uno de estos
cuatro registros est dividido en dos subregistros de 8 bits a los que se puede
acceder de forma independiente. As, por ejemplo, los 8 bits inferiores de AX se
llaman AL (L de low, bajo) y los 8 superiores AH (H de high, alto). En
consecuencia,

BX,

CX

DX

se

dividen

en

BH/BL,

CH/CL

DH/DL

respectivamente. De esta forma se tiene que todas las instrucciones


ensamblador pueden operar con datos de 8 y 16 bits segn lo que se precise.
En los dems registros esta subdivisin no es posible.

REGISTROS PUNTERO Y DE INDICE


-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 instruccin
es ejecutada o cuando una subrutina es llamada.
-BP (puntero de base): Puntero de propsito general utilizado para
direccionar una arreglo de datos en la pila.
-SI (ndice fuente): Se utiliza para direccionar datos fuentes indirectamente
mediante el uso de instrucciones con cadenas.
-DI (puntero de instruccin): Normalmente utilizado para direccionar el
destino de datos indirectamente para instrucciones con cadenas.
-IP (puntero de instruccin): Usado para direccionar la prxima instruccin
a ejecutar por el 8088. La localidad actual de la prxima instruccin est
formada por el contenido de IP.

P g i n a 15 | 23

ARQUITECTURA DE COMPUTADORAS

REGISTRO DE SEGMENTO
- CS (Code Segment): Este registro es usado por el procesador, junto con el
registro IP, para conocer dnde est la instruccin actual que est siendo
ejecutada.
- DS (Data Segment): Se usa para indicar dnde estn todos los datos del
programa en ejecucin.
- SS (Stack Segment): En este registro se indica al procesador dnde est la
zona de memoria que se usa como segmento de pila.
- ES (Extra Segment): Es el registro que referencia al segmento extra, y se
usa como apuntador de memoria auxiliar en operaciones complejas donde se
necesitan dos punteros de datos simultneos.

REGISTRO DE BANDERAS(flags)
Tambin llamado registro de estado o palabra de estado, es un registro de 16
bits y contiene la informacin sobre el estado de operaciones de la unidad
aritmtica y lgica.

- Bit 0 - CF (Carry Flag): Es la bandera de acarreo. Se pone a 1 cuando se


produce un resultado con acarreo tras una operacin aritmtica.
- Bit 1: No usado.
- Bit 2 - PF (Parity Flag): Cuando est a 1, indica que hay un nmero par de
bits activos.
- Bit 3: No usado.
- Bit 4 - AF (Auxiliar Flag): Se usa como bandera auxiliar. Se pone a 1
cuando hay necesidad de realizar ajustes tras una operacin de tipo BCD.

P g i n a 16 | 23

ARQUITECTURA DE COMPUTADORAS

- Bit 5: No usado.
- Bit 6 - ZF (Zero Flag): Indica si se ha producido un resultado cero o una
comparacin con operadores iguales.
- Bit 7 - SF (Sign Flag): Indica si se ha producido un resultado negativo o
comparacin menor.
- Bit 8 - TF (Trap Flag): Es la bandera de atrape, usada en procesos de
depuracin de cdigo.
- Bit 9 - IF (Interrupt Flag): Si est a 1, indica que est permitida la
generacin de interrupciones hardware que generan algunos perifricos, como
la que realiza el teclado cada vez que una tecla es pulsada.
- Bit 10 - DF (Direction Flag): Indica a la CPU hacia donde se desplazan los
punteros relativos en operaciones repetitivas de cadenas de datos.
- Bit 11 - OF (Overflow Flag): Indica si se ha producido un desbordamiento
aritmtico.
- Bit 12 al 15: No usados.

FUNCIONAMIENTO
MODOS DE DIRECCIONAMIENTO
En el 8086/8088, los parmetros (operadores) de una instruccin pueden ser
de tres tipos:
a. Registros internos de la CPU,
b. Valores inmediatos,
c. Direcciones de memoria, de las que hay cinco tipos diferentes de
representacin.
En total son siete las clases de parmetros que se pueden utilizar y
conjuntamente forman los llamados siete modos de direccionamiento.

P g i n a 17 | 23

ARQUITECTURA DE COMPUTADORAS

1. Registros internos: el origen y destino de la operacin son los registros


internos de la CPU.
2. Valores inmediatos: en este modo, el origen de los datos (y slo el origen)
es un valor numrico.
3. Valores de memoria. Hay cinco modos de acceso a memoria:
3.1 Modo directo: Se indica la direccin de memoria a la que se quiere
acceder.
3.2 Modo indirecto mediante registro: Es similar al modo anterior slo que
el valor del desplazamiento del operando no se indica directamente sino que se
encuentra en un registro de la CPU.
3.3 Modo relativo a base: Es unir los dos modos anteriores. Consiste en
indicar la posicin del operando utilizando como desplazamiento el valor de un
registro sumado con una cantidad constante.
3.4 Modo directo indexado: Idntico al anterior pero usando como registro
de desplazamiento el registro SI o el DI.
3.5 Modo indexado a base: Este es el modo ms complejo, y se podra decir
que es el resultado de unir los cuatro anteriores. En este modo, el
desplazamiento del operando se compone a partir de un registro que hace de
base, un registro ndice y un valor inmediato que se les suma.

LA PILA(STACK)
La pila es una caracterstica interna del 8086/8088. Proporciona a los
programas un lugar donde almacenar y seguir la pista del trabajo que se est
llevando a cabo. La funcin ms importante de la pila es la de mantener el
registro de los lugares donde se llam a una subrutina y de los parmetros que
se le pasaron. La pila tambin puede utilizarse para el almacenamiento
temporal de datos de trabajo, aunque esto es menos fundamental y no tan
comn.
La pila obtiene su nombre por analoga con los montones de platos apilados
(pilas de platos). Cuando un dato nuevo es introducido (push) en la cima de la

P g i n a 18 | 23

ARQUITECTURA DE COMPUTADORAS

pila, ste ser el primer en ser extrado (pop). Por eso se dice que la pila
siempre opera en el orden ltimo en entrar, primero en salir (LIFO, Last In
First Out). Esto significa que cuando la pila se utiliza para seguir la pista de los
retornos de las subrutinas, la primera llamada a subrutina que se hizo es la
ltima

que

vuelve.

De

esta

manera,

la

pila

mantiene

ordenado

el

funcionamiento del programa, las subrutinas y las rutinas de tratamiento de


interrupcin, sin importar lo complejo de la operacin.

INTERRUPCIONES
Las interrupciones1 son mecanismos utilizados en los ordenadores por medio
de los cuales es posible interrumpir la ejecucin de un programa para atender
la llegada de un acontecimiento externo. As, pues, son seales que se le
envan a la CPU para que suspenda la ejecucin de la instruccin en curso y
atienda una peticin determinada.
Hay cuatro tipos de interrupciones:

Interrupciones hardware: Son las generadas por la circuitera del


ordenador en respuesta a algn evento como pulsar una tecla del
teclado. Este tipo de interrupciones la maneja el controlador de
interrupciones, que establece la prioridad antes de enviar la seal a la
CPU.

Interrupciones internas: Son las generadas por la propia CPU cuando


se produce una situacin anormal, como por ejemplo, una divisin por
cero.

Interrupciones software: Son las generadas por el propio programa


para invocar a ciertas rutinas almacenadas en memoria (ROM o RAM). Es
posible cambiar estas rutinas. Las interrupciones se aprovechan tambin
en la actualidad como funciones software: no son activadas por
dispositivos externos al procesador, sino que lo son por los propios

P g i n a 19 | 23

ARQUITECTURA DE COMPUTADORAS

programas.

Las

interrupciones

software

pueden

ser

activadas

internamente por la propia CPU cuando se producen situaciones


especiales, como, por ejemplo, cuando se intenta hacer una divisin
siendo el divisor igual a cero. Esto ahorra el tiempo que, en otro caso,
deberan dedicar los programas a la comprobacin previa de los
divisores.

Interrupciones no enmascarables: Se usan para pedir la atencin


inmediata de la CPU en situaciones de emergencia, como cada de
voltaje o error de paridad de memoria. Cada interrupcin lleva asociado
un nmero que identifica el tipo de servicio que debe realizar. A partir
del nmero de interrupcin, calcula la direccin de la rutina que realiza
el servicio requerido, la ejecuta y retorna a la instruccin siguiente a la
ltima que ejecut antes de que se produjera la interrupcin.

El mecanismo de la interrupcin es simple: en un momento determinado se


activa la entrada de la interrupcin al procesador. El procesador suspende
entonces la ejecucin del programa en curso, pasando el control al programa
de interrupcin. Este programa tratar la causa de la interrupcin, desactivar
el dispositivo que la ha producido y devolver el control al programa principal.
El programa principal es transparente a este proceso y no tiene ninguna
indicacin de que se ha producido, salvo, por supuesto, por el tiempo de
proceso transcurrido.
Una funcin que ejecutan todas las interrupciones al activarse el programa de
interrupcin es salvar los registros del procesador para evitar que sean
modificados y alteren el funcionamiento del programa suspendido. Estos
registros se restauran justo antes de volver al programa principal. ste tiene,
sin

embargo,

la

posibilidad

de

bloquear

las

interrupciones

mediante

instrucciones que activan o desactivan una bandera de interrupcin (bandera


IF). Tal posibilidad es necesaria cuando el programa principal accede a datos o
perifricos que son tambin utilizados por las interrupciones, pues se pueden

P g i n a 20 | 23

ARQUITECTURA DE COMPUTADORAS

producir situaciones errneas cuando los dos (proceso e interrupcin) intenten


utilizar los mismos recursos simultneamente.
La mayora de los procesadores disponen de una entrada especial de
interrupcin que no puede ser impedida por software: se trata de la NMI (non
maskable interrupt). Esta entrada es necesaria para aplicaciones de alta
prioridad y urgencia (como es el caso de un fallo en la alimentacin) en los que
el procesador tiene escaso tiempo para detener los procesos y salvar los datos
vitales de la mquina.

VECTORES DE INTERRUPCION
La familia IBM PC, como todos los ordenadores basados en la familia de
microprocesadores Intel 8086/8088, se controla en gran medida a travs de la
utilizacin de interrupciones, las cuales pueden ser generadas por el hardware
y el software, como ya se ha visto. Las rutinas de servicios del BIOS no son una
excepcin y cada una de ellas tiene asignada un nmero de interrupcin al que
se puede invocar cada vez que se quiera usar ese servicio.
Cuando se produce una interrupcin, el control del ordenador se transfiere a
una subrutina de tratamiento de la interrupcin que a menudo est
almacenada en la ROM del sistema (una rutina de servicio del BIOS no es ms
que una rutina de tratamiento de interrupcin). A esta rutina de tratamiento de
la

interrupcin

se

le

llama

cargando

su

direccin

de

segmento

desplazamiento en los registros CS e IP, respectivamente. Las direcciones de


segmentos que ubican las rutinas de tratamiento de la interrupcin se llaman
vectores de interrupcin.
Durante el proceso de arranque, la ROM BIOS establece los vectores de
interrupcin para que apunten a las rutinas de tratamiento de la interrupcin
en la ROM. La tabla de vectores de interrupcin comienza al principio de la
RAM, en la direccin 0000:0000. Cada entrada de la tabla se almacena como

P g i n a 21 | 23

ARQUITECTURA DE COMPUTADORAS

una pareja de palabras, con el desplazamiento en la primera parte y el


segmento en la segunda. Los vectores de interrupcin pueden cambiarse para
que apunten a una nueva rutina de tratamiento de la interrupcin simplemente
ubicando el vector y cambiando su valor.

PROCESO DE ARRANQUE
Cuando el PC se pone en funcionamiento, el proceso de carga del sistema2 se
inicia por medio de la ROM y despus se carga el sistema operativo (en nuestro
caso el DOS), ya sea desde un disco flexible o desde el disco duro. En la
memoria tambin se cargan varias rutinas del BIOS. Una vez realizado todo el
proceso de carga, se instala en la memoria el procesador de comandos
COMMAND.COM.
Los archivos de arranque son el IO.SYS y el MSDOS.SYS, y, junto con el
COMMAND.COM, constituyen la parte principal de la arquitectura del sistema
operativo MSDOS. Las rutinas contenidas en los dos primeros archivos son las
encargadas de manejar todos los dispositivos y controlar las tareas de I/O
asociadas con los perifricos. Adems, el segundo de ellos contiene todas las
rutinas de servicio del DOS. A todas estas rutinas se accede por medio de
interrupciones software y hardware (vistas en el apartado anterior).
La importancia de estas rutinas es tal que son utilizadas por el 99.99% de los
programas desarrollados para MS-DOS. A una gran parte de esas rutinas se
accede por medio de una llamada a la interrupcin 21h, conocida como
interrupcin del sistema (en el apndice D se encuentra una lista de todas las
interrupciones y de todos los servicios que ofrece esta interrupcin 21h).
Es poco probable que el usuario desee modificar las rutinas de servicio ya que
ellas proporcionan un marco de referencia para llevar a cabo tareas de
programacin muy tediosas.

P g i n a 22 | 23

ARQUITECTURA DE COMPUTADORAS

EJECUCION DE PROGRAMAS
Lo primero que ocurre es que el oscilador (reloj) enva un pulso a la
circuitera.
Entonces la CPU enva por el bus de direcciones la posicin (direccin de
memoria) de la instruccin siguiente a la ltima ejecutada. Este paso se
denomina tambin fase de bsqueda, y en ella la CPU ordena la
transferencia del contenido del contador de programa al registro de
seleccin de memoria y enva a la memoria la orden de lectura.
Una vez enviada la peticin, el sistema lee el contenido de los bytes de
la posicin que contiene la instruccin y sus parmetros, si es que
posee, para enviarlos a la CPU a travs del bus de datos.
Cuando llega la instruccin a la CPU, sta la decodifica, tras lo cual se
inicia la fase de bsqueda de operandos, en la que la CPU transfiere la
direccin del operando, en el caso de que ste se encuentre en
memoria. Posteriormente se realiza el mismo proceso con el otro
operando.
Una vez obtenidos los operandos, la instruccin es ejecutada. Para
ejecutarse, cada instruccin necesita un nmero diferente de ciclos o
seales de oscilador.

P g i n a 23 | 23

Вам также может понравиться