You are on page 1of 3

CICLO DE FETCH

Un ciclo de instrucción (también llamado ciclo de fetch) es el periodo de tiempo que


tarda la unidad central de proceso (CPU) en ejecutar una instrucción de lenguaje
máquina.

Comprende una secuencia de acciones determinada que debe llevar a cabo la CPU
para ejecutar cada instrucción en un programa. Cada instrucción del juego de
instrucciones de una CPU puede requerir diferente número de ciclos de
instrucción para su ejecución. Un ciclo de instrucción está formado por uno o más
ciclos máquina.

• Para que cualquier sistema de proceso de datos basado en microprocesador


(por ejemplo un ordenador) o microcontrolador (por ejemplo un
reproductor de MP3) realice una tarea (programa) primero debe buscar
cada instrucción en la memoria principal y luego ejecutarla.

Secuencia de acciones del ciclo de instrucción

Instrucción:

El valor del contador de programa (es un registro del procesador de un


computador que indica la posición donde está el procesador en su secuencia de
instrucciones.)Sobre el bus de direcciones (es un canal del microprocesador
totalmente independiente, donde se establece la dirección de memoria de los
datos en tránsito). Entonces el CPU pasa la instrucción de la memoria principal a
través del bus de datos (encarga de mover la información por los componentes de
hardware del sistema de computación, tanto de Entrada (teclado, mouse,) como
de salida (monitor, impresora), al Registro de Datos de Memoria (MDR), el valor
del MDR es colocado en el Registro de Instrucción Actual (CIR), un circuito que
guarda la instrucción temporalmente de manera que pueda ser decodificada y
ejecutada.

Decodificación

El código de operación de la instrucción que se encuentra en el Registro de datos


DR, se deposita en el registro de instrucciones (IR). Luego, los circuitos de control
interpretan ese código de operación para determinar qué operación se va a
ejecutar.
Fetch de Operando

Realiza la búsqueda de un operando en memoria, si es necesario. Generalmente es


la misma instrucción quien proporciona la dirección del operando al procesador.

Ejecución de la Operación

Una vez conocida la naturaleza de la instrucción, y el operando ha sido extraído


desde memoria, el procesador ejecuta la operación indicada por el código
contenida en la instrucción.

Lenguaje ensamblado
El lenguaje ensamblador (assembler) es un tipo de lenguaje de bajo nivel utilizado
para escribir programas informáticos, y constituye la representación más directa
del código máquina específico para cada arquitectura de computadoras legible por
un programador.

Fue usado principalmente en los inicios del desarrollo de software, cuando aun no
se contaba con los potentes lenguajes de alto nivel.
Características
• Lenguaje ensamblador posee una cierta dificultad de ser entendido
directamente por un ser humano ya que su estructura se acerca mas bien al
lenguaje máquina, es decir, lenguaje de bajo nivel.
• El lenguaje ensamblador es difícilmente portable, es decir, un código escrito
para un microprocesador en particular necesita ser modificado muchas
veces en su totalidad para poder ser usado en otro microprocesador.
• Los programas hechos en lenguaje ensamblador son generalmente más
rápidos y consumen menos recursos del sistema (memoria RAM y ROM).
Al programar cuidadosamente en lenguaje ensamblador se pueden crear
programas que se ejecutan más rápidamente y ocupan menos espacio que
con lenguajes de alto nivel.
• Con el lenguaje ensamblador se tiene un control muy preciso de las tareas
realizadas por un microprocesador por lo que se pueden crear segmentos de
código difíciles de programar en un lenguaje de alto nivel.

Assembler

Código máquina
El código máquina, o lenguaje de máquina, está formado por instrucciones
sencillas, dependiendo de la estructura del procesador

o llenar un registro con un valor constante


o mover datos de una posición de memoria a un registro o viceversa
o escribir y leer datos de dispositivos
o sumar, restar, multiplicar o dividir los valores de dos registros,
colocando el resultado en uno de ellos o en otro registro
o realizar operaciones binarias, incluyendo operaciones lógicas
(AND/OR/XOR/NOT)
o comparar valores entre registros (mayor, menor, igual)
o saltar a otra posición en el programa y ejecutar instrucciones allí

You might also like