Está en la página 1de 31

Ciclo Fecht

¿Cómo funciona
una computadora?
Ciclos proceso de instrucciones

Inicio
El proceso de instrucciones se
Capturar la
da en dos fases:
siguiente
 El ciclo en el que el CPU obtiene instrucción
(“fetch”)
fetch la instrucción de
memoria Ejecutar la
 El ciclo donde ejecuta la instrucción
instrucción (“ejecución”)
ejecución
Parar

Ejecución de
un programa
Proceso de instrucciones
(Organización de computadoras: A. Tanenbaum)

 Buscar la siguiente instrucción de la memoria (PC) y


colocarla en el registro de instrucción (IR)
Modificar el contador del programa (PC) de modo
que apunte a la siguiente instrucción a ejecutarse
 Determinar el tipo de instrucción que se trajo
(decodificar)
Si la instrucción utiliza una palabra de memoria
(operando) determinar donde está.
Buscar la palabra y colocarla si es necesario en un
registro del CPU
 Ejecutar la instrucción
 Volver al paso 1 (ejecutar la siguiente instrucción)

El proceso se conoce como búsqueda-decodificación-


ejecución
Un programa – Elemento Lógico

 Para efectuar la suma se necesitan dos tipos


de objetos.
– Datos
– Operaciones o funciones
 Programa, es la forma de describir los pasos
a efectuar y de comunicárselo a la
computadora. (Modelado de la realidad).
 Pasos para efectuar 5 + 7
5 +7Presionar el 5 (calculadora guarda ese número en
memoria temporal).
 Presionar + (traslada el 5 a un acumulador especial).
 Presionar el 7 (se efectúa la suma en el acumulador,
mantiene el resultado internamente).
 Presionar el = (se han terminado las operaciones).
 Se despliega el 12.
Programa

 Conjunto explícito de pasos a seguir para


lograr un fin determinado.
 Instrucciones para sumar 2 números.
– Observar el primer número
– Llevar al acumulador para luego sumarlo
– Observar el segundo número y acumularlo
– Mostrar el resultado
Unidad de Control
 Dirige y coordina las actividades del sistema.
 Controla el movimiento de señales entre la memoria, la
unidad aritmético lógica y los dispositivos de
entrada/salida.
 Carga las instrucciones desde la memoria
 Maneja las Interrupciones.
 Interpreta (Decodifica) instrucciones y genera señales que
son enviadas a otros componentes.
 Utiliza un reloj del sistema para sincronizar todas las
tareas.
 Genera señales de control/tiempo.
 Controla la decodificación/ejecución de instrucciones.
Memoria
 Conjunto de celdas electrónicas
– Cada celda puede contener uno y sólo un valor numérico.
– Cada celda es direccionable o sea se puede distinguir una
de otra por medio de un número unívoco llamado dirección.
 Para organizar la memoria se usa un conjunto
numerado secuencialmente.
 Se usará un apuntador para dirigirse a alguna celda
(dirección).
Celdas de memoria y direcciones

4 23 42 9 7
Dirección 2950 2951 2952 2953 2954

Apuntador
Celdas de Memoria
 Cada celda tiene una dirección.
 Cada celda tiene un contenido o valor.
 Ejemplo: La celda de la dirección 2951 contiene un
23.
 Importante la existencia de dos conceptos
independientes: dirección y valor, aunque por
casualidad pueden coincidir.
 Operaciones sobre la memoria
– Leer el contenido de una celda.
– Escribir un valor en una celda.
Codificación

 En las celdas de memoria sola caben


números, entonces habrá que convertir las
instrucciones en números.
 Cuántas instrucciones
 Cuáles instrucciones.
 Depende del CPU.
 Se usa un diccionario electrónico.
Instrucciones

Instrucción Código Longitud


CARGA 20 2
GUARDA 02 2
RESTA 33 2
SUMA 30 2
ALTO 70 1
Definiciones

 Lenguaje máquina, código manejado por el


CPU (reconocido y ejecutado).
 Programa fuente, escrito en lenguaje
simbólico y mnemónico. Es más fácil de
entender por los humanos. No lo entiende la
computadora.
 Programa objeto, escrito en código
numérico. Reconocido por la computadora.
Consideraciones para programa
5+7

 Se requieren tres celdas de memoria, dos


para los datos ( 5 y 7) y una para el
resultado. (Celdas 20, 21 y 22)
 Hay que definir en detalle los operaciones a
efectuar, su orden y la codificación
adecuada.
 Hay que introducir todos los datos e
instrucciones en la memoria.
Instrucciones y registros
 Acumulador, celda especial o registro del
CPU, utilizado para efectuar operaciones.
 CARGA <dirección>, instrucción que lleva el
contenido de una celda al acumulador.
 GUARDA <dirección>, deposita el valor del
acumulador en una celda de memoria.
 SUMA <dirección>, suma al acumulador el
contenido de la celda descrita.
 ALTO, detener el programa.
Programa fuente 5 + 7
Instrucción Dirección

CARGA 20

SUMA 21

GUARDA 22

ALTO
Programa objeto 5+ 7

Código
20 20
30 21
02 22
70
Consideraciones

 Este programa sirve para sumar cualquier


par de números que residan en las celdas 20
y 21.
 Falta cargar el programa objeto en la
memoria de la computadora. Se decidió a
partir de la celda 10.
 Luego de cargado se le debe indicar a la
computadora que ejecute el programa.
Programa objeto cargado
en memoria

... 20 20 30 21 02 22 70 ... 5 7 ?? ...

Dirección 10 11 12 13 14 15 16 20 21 22
Unidad de Control
 Su función principal es dirigir la secuencia de pasos
de modo que la computadora lleve a cabo un ciclo
completo de ejecución de una instrucción y hacer
esto con todas las instrucciones de un programa.
 La unidad de control ejecutará este ciclo de cuatro
pasos a una velocidad enorme.
 Existe un registro apuntador que le indica al
computador la siguiente celda de memoria a leer
llamado CP Contador de programa.
CicloI de ejecución del CPU II

FETCH DECODIFACION

ACTUALIZACION
EJECUCION
DEL CP

IV III
Ciclo de ejecución del CPU
➨ I. Ir a la memoria y extraer el código de la
instrucción que indica el CP.
➨ II. Decodificar la instrucción recién leída. Revisar
longitud de instrucción. Si es 2 actualizar CP en
siguiente celda.
➨ III. Ejecutar la instrucción.
➨ IV. Actualizar CP para que apunte a la siguiente
celda.
Los
Registros
Concepto general
Los registros del procesador se
emplean para controlar
instrucciones en ejecución, manejar
direccionamiento de memoria y
proporcionar capacidad aritmética.
 (http://www.monografias.com/trabajos7/regi/regi.shtml)
– Registros: almacenamiento interno del CPU
 Registro de Dirección de Memoria - MAR (Memory Address
Register): registro que contiene la dirección de la palabra a ser
leída o escrita en la memoria
 Registro Temporal de Memoria - MBR (Memory Buffer Register):
contiene la palabra que fue "leída de" ó "escrita a" la memoria
 Contador de Programa - PC (Program Counter): contiene la
dirección de la siguiente instrucción a ser ejecutada .

 Registro de Instrucción - IR (Instruction Register): registro que


contiene la instrucción en curso durante su ejecución.

 Acumulador (AC) : almacena temporalmente operandos y


resultados del ALU. registro para acumular resultados
aritméticos.
Pasos en la ejecución
de un programa
Paso 0 CP en 10
Paso I Paso II Paso III Paso IV
Va a celda 10 y
Paso 1
extrae un 20
Decodifica el 20
en una carga,
Paso 2
como longitud = 2
CP en 11
Ejecuta la carga
de la celda que
indica la celda 11
(contiene 20) o
Paso 3
sea carga el
contenido de la
celda 20
(contiene 5).
Paso 4 CP en 12
Pasos en la ejecución
de un programa
Paso I Paso II Paso III Paso IV
Va a celda 12 y
Paso 5
extrae un 30
Decodifica el 30
en una SUMA,
Paso 6
como longitud = 2
CP en 13
Ejecuta la suma,
con lo que añade
al acumulador el
Paso 7 contenido de la
celda 21. (El 21
reside en la celda
13).
Paso 8 CP en 14
Pasos en la ejecución
de un programa
Paso I Paso II Paso III Paso IV
Va a celda 14 y
Paso 9
extrae un 02
Decodifica el 02
en un GUARDA,
Paso 10
como longitud = 2
CP en 15
Ejecuta el guarda,
se deposita el
Paso 11 valor del
acumulador (12)
en la celda 22.
Paso 12 CP en 16
Pasos en la ejecución
de un programa
Paso I Paso II Paso III Paso IV
Va a celda 16 y
Paso 13
extrae un 70
Decodifica el 70
en un ALTO, no
Paso 14 hace nada con el
CP debido a que
longitud = 1
Ejecuta el alto, lo
Paso 15 que detiene la UC
y la computadora.
Práctica

 R=a+b+c-d
 Posiciones de memoria 770 a 773
– Carga 770
– Suma 771
– Suma 772
– Resta 773
– Guarda 774
– Alto
 20 770 30 771 30 772 33 773 02 774 70
Maquina de Von Newman - Estructura
Unidad Aritmético / Lógica

AC MQ Equipo de
entrada/ salida
Circuitos
Aritméticos-lógicos

C MBR
Instrucciones
y Datos
P
U IBR PC

Memoria
IR MAR
Principal M
Circuitos
Señales
de Control de
Control
Unidad de Control de programa

También podría gustarte