6.2+Ciclo+de+Ejecucion+De+Una+Instruccion

Un //**ciclo de instrucción**// (también llamado ciclo de //fetch-and-execute// o ciclo de //fetch-decode-execute// en inglés) es el período 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. -CICLO DE INSTRUCCION- Un ciclo de instrucción (tambien llamado ciclo de traer y ejecutar) es el período de tiempo durante el cual un ordenador lee y procesa una instrucción de lenguaje máquina de su memoria o la secuencia de acciones que la unidad central (CPU) funciona para ejecutar cada instrucción de código de máquina en un programa. El nombre el ciclo traer-y-ejecutar comúnmente es usado.La instrucción debe ser traída de la memoria principal, y luego ejecutado por la CPU.Esto es fundamentalmente como un ordenador funciona, con su lectura de CPU y ejecución de una serie de instrucciones escritas en su lenguaje máquina.De esto surgen todas las funciones de un ordenador familiar a partir del final del usuario. Ciclo de Instruccion: La CPU de cada ordenador puede tener ciclos diferentes basados en juegos de instrucción diferentes. Traer la instruccion desde la memoria principal: La CPU presenta el valor de la PC sobre el bus de dirección.La CPU entonces trae la instrucción de la memoria principal vía el bus de datos en el Registro de Datos de Memoria (MDR).El valor del MDR entonces es colocado en el Registro de Instrucción Actual un circuito que sostiene la instrucción de modo que pueda ser descifrado y ejecutado. Decodificar la instrucion: El decodificador de instrucción interpreta y pone en práctica la instrucción. Registros que son críticos al ciclo ejecutar traída: El registro de instrucción (IR) - mantiene la instrucción actual. La PC - sostiene la dirección en la memoria de la siguiente instrucción a ser ejecutada. Traer archivos desde la memoria principal: Lea la dirección eficaz de la memoria principal si la instrucción tiene una dirección indirecta. Traer requiere datos de la memoria principal para ser procesada y colocado en registros.



//** autor: hernanez martinez oscar **//
= CICLO DE UNA INSTRUCCION =

Un //**ciclo de instrucción**// (también llamado ciclo de //fetch-and-execute// o ciclo de //fetch-decode-execute// en inglés) es el período 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 instruccion
Habitualmente son cuatro los eventos o pasos que se llevan a cabo en cada ciclo de instrucción (ciclo de fetch):

(1) Buscar la instruccion en la memoria principal
Se vuelca el valor del [|contador de programa] sobre el [|bus de direcciones]. Entonces la CPU pasa la instrucción de la memoria principal a través del bus de datos al [|Registro de Datos de Memoria] (MDR). A continuación 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.

(2) Decodificar la instrucción
El decodificador de instrucción interpreta e implementa la instrucción. El registro de instrucción (IR) mantiene la instrucción en curso mientras el contador de programa (PC, //program counter//) guarda la [|dirección de memoria] de la siguiente instrucción a ser ejecutada. También se lee la dirección efectiva de la memoria principal si la instrucción tiene una dirección indirecta, y se recogen los datos requeridos de la memoria principal para ser procesados y colocados en los registros de datos.
 * Recogida de datos desde la memoria principal

(3) Ejecutar la instrucción
A partir del registro de instrucción, los datos que forman la instrucción son decodificados por la unidad de control. Ésta interpreta la información como una secuencia de señales de control que son enviadas a las unidades funcionales relevantes de la CPU para realizar la operación requerida por la instrucción.

(4) Almacenar o guardar resultados
El resultado generado por la operación es almacenado en la memoria principal o enviado a un dispositivo de salida dependiendo de la instrucción. Basándose en los resultados de la operación, el contador de programa se incrementa para apuntar a la siguiente instrucción o se actualiza con una dirección diferente donde la próxima instrucción será recogida.

El ciclo de búsqueda
Los pasos 1 y 2 del ciclo de instrucción se conocen como ciclo de búsqueda (//fetch//). Estos pasos son idénticos en todas las instrucciones. El ciclo de búsqueda procesa la instrucción a partir de la palabra de instrucción, que contiene el código de operación y el operando.

El ciclo de ejecución
Los pasos 3 y 4 del ciclo de intrucción se conocen como ciclo de ejecución. Estos pasos cambiarán con cada tipo de instrucción. El primer paso del ciclo de ejecución es el proceso de memoria, en que los datos se tranfieren entre el CPU y el módulo de [|entrada/salida] (I/O). A continuación se produce el proceso de datos, que usa operaciones matemáticas así como operaciones lógicas en referencia a los datos. Después tiene lugar el paso de alteraciones centrales, que son una secuencia de operaciones, por ejemplo una operación de salto. El último paso es una operación combinada de todos los otros pasos. FUENTE: http://es.wikipedia.org/wiki/Ciclo_de_instrucci%C3%B3n

autor: Gutierrez Junco Claudia
**Ciclo de Ejecucion De Una Instruccion**

La ejecución del programa consiste en la repetición del proceso de traer y ejecutar la instrucción. Buscar una instrucción es una operación común a todas las instrucciones, y consiste en la lectura de la instrucción de una localidad de memoria. La ejecución de la instrucción puede suponer varias operaciones y depende de la naturaleza de la instrucción. El procesamiento de una instrucción se denomina ciclo de instrucción. Se representa en la figura 4. Los dos pasos se denotan como ciclo de búsqueda y ciclo de ejecución. La ejecución del programa se detiene sólo si la computadora se desconecta, se produce algún error o se encuentra una instrucción que detiene la computadora. Figura 4. Ciclo básico de instrucción Al principio de cada ciclo de instrucción, la CPU busca o trae una instrucción de memoria. En una CPU típica, se utiliza un registro llamado contador de programa (PC program counter) para apuntar a la instrucción que debe traerse a continuación. A no ser que se indique otra cosa, la CPU siempre incrementa el PC después de traer una instrucción para determinar de dónde traer la siguiente instrucción de la secuencia (siguiente dirección de memoria). La instrucción traída se almacena en un registro de la CPU conocido como registro de instrucción (IR instruction register). La CPU interpreta la instrucción y realiza la acción requerida. · **CPU - Memoria:** Deben transferirse datos desde la CPU a la memoria o viceversa. · **CPU - E/S:** Deben transferirse datos a o desde el exterior mediante el módulo de E/S. · **Procesamiento de datos:** La CPU realizará alguna operación aritmética o lógica con los datos. · **Control:** Una instrucción puede especificar que la secuencia de ejecución se altere por lo que la CPU debe poner el contador de programa al valor adecuado. El ciclo de ejecución de una instrucción puede ocasionar más de una referencia a memoria, o en su lugar, puede especificar una operación de E/S. Con estas consideraciones en mente, la figura 5 proporciona una visión más detallada el ciclo de instrucción. Para un ciclo de instrucción dado, algunos estados pueden no darse y otros pueden visitarse más de una vez. Figura 5. Diagrama de estado del ciclo de instrucción Los estados de la parte superior de la figura 5 ocasionan intercambio entre la CPU y la memoria o módulo E/S. Los estados inferiores sólo ocasionan operaciones internas en la CPU. El estado oac aparece dos veces, porque una instrucción puede ocasionar una lectura, una escritura o ambas. Obsérvese además la posibilidad de múltiples operandos y resultados puesto que se necesitan en algunas instrucciones.
 * En general, ésta puede ser de cuatro tipos:**
 * Los estados se describen a continuación:**
 * Cálculo de la dirección de instrucción (iac, instruction address****calculation):** Determina la dirección de la siguiente instrucción a ejecutar.
 * Búsqueda de instrucción (if, instruction fetch):** La CPU lee la instrucción desde su posición de memoria.
 * Decodificación de la operación indicada en la instrucción (iod, instruction****operation decoding):** Analiza la instrucción para determinar el tipo de operación a realizar y el (los) operando(s) a utilizar.
 * Cálculo de la dirección del operando (oac, operand address calculation):** Si la instrucción implica una referencia a un operando en memoria o disponible mediante E/S, determina la dirección del operando.
 * Búsqueda de operando (of, operand fetch):** Trae el operando desde la memoria o se lee desde el dispositivo de E/S.
 * Operación con los datos (do, data operation):** realiza la operación indicada en la instrucción.
 * Almacenamiento de operando (os, operand store):** Escribe el resultado en memoria o lo saca a través de un dispositivo de E/S.

Los pasos a seguir para el procesamiento de las instrucciones son los siguientes: 1. cada instrucción es leída ( una a la vez), desde la memoria, por el procesador y, 2. cada instrucción es ejecutada por el procesador. La repetición de la lectura y ejecución ( pasos 1 y 2 respectivamente), conforman la “ejecución de un programa”. Dicha ejecución puede detenerse si: la máquina se apaga, ocurre un error que no puede ser recuperado, o si, se encuentra una instrucción en el programa que detenga la computadora. Ciclo de instrucción: es el procesamiento requerido para la instrucción. En este Ciclo, se encuentran los dos pasos citados anteriormente, denominados Ciclo de lectura (feth) y Ciclo de ejecución. Lectura y ejecución de instrucciones El procesador lee una instrucción de la memoria, al comienzo de cada Ciclo de instrucción. Se cuenta con un contador de programas ( PC program counter ), que lleva la cuenta de cual es la próxima instrucción a leer. Luego de leer cada instrucción el procesador incrementara el PC, de manera tal que la siguiente instrucción a leer será; la que se encuentra en la dirección inmediatamente superior de la memoria. La instrucción leída es cargada en el registro de instrucción ( IR instuction register ), que es un registro del procesador. El procesador interpreta la instrucción, la cual está en forma de código binario, que especifica la acción que el procesador llevará a cabo, y realizará la acción requerida. Las acciones que se realizan para la lectura y ejecución de instrucciones se pueden clasificar en las siguientes categorías: · Procesador-memoria: los datos se transfieren del procesador a la memoria o viceversa. · Procesador E/S: los datos se transfieren desde o hacia un dispositivo periférico. Se realiza la transferencia entre el procesador y un módulo de entrada-salida. · Tratamiento de datos: el procesador puede realizar alguna operación aritmética o lógica sobre los datos. · Control: la secuencia de ejecución puede ser alterada si la instrucción lo especifica. La ejecución de una instrucción puede incluir una combinación de las acciones antes mencionadas. Funciones de E/S Los módulos de E/S, por ejemplo un controlador de disco, peden intercambiar datos directamente con el procesador y el este puede iniciar una escritura o lectura en la memoria, para ello debe indicar la dirección de una ubicación especifica. El procesador puede leer datos de un módulo de E/S o escribir en él, para ello indica a un dispositivo especifico que esta controlado por un determinado módulo de E/S. Para relevar al procesador de la tarea de E/S, es conveniente que los intercambios de E/S se produzcan directamente con la memoria. De esta manera el procesador le da a un módulo de E/S autoridad para leer o escribir en la memoria de modo que la transferencia de E/S se realiza sin obstruir al procesador. Se releva al procesador durante la transferencia de la responsabilidad de intercambio, ya que el modulo de E/S emite ordenes de lectura o escritura en la memoria. La operación realizada se conoce como DMA (direct memory access) o acceso directo a memoria.
 * CICLO DE EJECUCION DE UNA INSTRUCCION **

** ★ **** •« **** ║█ ** ** ║║▀▄▀▄ YESSICA LIZBETH FAJARDO NIETO ║█ ** ** ║║▀▄▀▄ **** •« **** ★ **

CICLO DE EJECUCION DE UNA INSTRUCCION Un //**ciclo de instrucción**// (también llamado ciclo de //fetch-and-execute// o ciclo de //fetch-decode-execute// en inglés) es el período que tarda la unidad central de proceso en ejecutar una instrucción de. 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 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. 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 instruccion
Habitualmente son cuatro los eventos o pasos que se llevan a cabo en cada ciclo de instrucción (ciclo de fetch):

(1) Buscar la instruccion en la memoria principal
Se vuelca el valor del sobre el. Entonces la CPU pasa la instrucción de la memoria principal a través del bus de datos al (MDR). A continuación el valor del MDR es colocado en el (CIR), un circuito que guarda la instrucción temporalmente de manera que pueda ser decodificada y ejecutada.

(2) Decodificar la instrucción
El decodificador de instrucción interpreta e implementa la instrucción. El registro de instrucción (IR) mantiene la instrucción en curso mientras el contador de programa (PC, //program counter//) guarda la de la siguiente instrucción a ser ejecutada. También se lee la dirección efectiva de la memoria principal si la instrucción tiene una dirección indirecta, y se recogen los datos requeridos de la memoria principal para ser procesados y colocados en los registros de datos.
 * Recogida de datos desde la memoria principal

(3) Ejecutar la instrucción
A partir del registro de instrucción, los datos que forman la instrucción son decodificados por la unidad de control. Ésta interpreta la información como una secuencia de señales de control que son enviadas a las unidades funcionales relevantes de la CPU para realizar la operación requerida por la instrucción.

(4) Almacenar o guardar resultados
El resultado generado por la operación es almacenado en la memoria principal o enviado a un dispositivo de salida dependiendo de la instrucción. Basándose en los resultados de la operación, el contador de programa se incrementa para apuntar a la siguiente instrucción o se actualiza con una dirección diferente donde la próxima instrucción será recogida.

El ciclo de búsqueda
Los pasos 1 y 2 del ciclo de instrucción se conocen como ciclo de búsqueda (//fetch//). Estos pasos son idénticos en todas las instrucciones. El ciclo de búsqueda procesa la instrucción a partir de la palabra de instrucción, que contiene el código de operación y el operando.

El ciclo de ejecución
Los pasos 3 y 4 del ciclo de intrucción se conocen como ciclo de ejecución. Estos pasos cambiarán con cada tipo de instrucción. El primer paso del ciclo de ejecución es el proceso de memoria, en que los datos se tranfieren entre el CPU y el módulo de (I/O). A continuación se produce el proceso de datos, que usa operaciones matemáticas así como operaciones lógicas en referencia a los datos. Después tiene lugar el paso de alteraciones centrales, que son una secuencia de operaciones, por ejemplo una operación de salto. El último paso es una operación combinada de todos los otros pasos. POSTEO ANA LUCIA VANEGAS MARTINEZ

[|Ciclo de Una Instruccion] posteo: Romero Pasten Luis Angel