Appearance
A4. Ejecución de instrucciones
Instrucciones
Todos los ejercicios deberán realizarse a mano en la libreta, incluyendo los esquemas, las tablas y las explicaciones.
Una vez completados:
- Fotografía las páginas de la libreta de forma que el contenido resulte claramente legible.
- Guarda las fotografías en un directorio
imagesdentro del directorio de la actividad. - Incorpora las fotografías al documento Markdown de la actividad, respetando el orden de los ejercicios.
- Comprueba que las imágenes se visualizan correctamente en la documentación publicada mediante GitHub Pages.
No se admitirán respuestas redactadas digitalmente como sustitución del trabajo manuscrito.
1. Ciclo de instrucción
Elabora un diagrama que represente las tres fases principales del ciclo de instrucción:
- Búsqueda (Fetch).
- Decodificación (Decode).
- Ejecución (Execute).
Explica brevemente qué sucede en cada fase e identifica los componentes de la CPU que intervienen.
2. Interpretación de instrucciones
Considera la siguiente instrucción:
asm
LOAD R2, @5Responde a las siguientes preguntas:
- ¿Qué operación indica
LOAD? - ¿Qué representa
R2? - ¿Qué significa
@5? - ¿De dónde se obtiene el dato?
- ¿Dónde se almacena el dato después de ejecutar la instrucción?
3. Ejecución paso a paso
Considera el siguiente estado inicial de un ordenador simplificado:
Memoria principal:
| Dirección | Contenido |
|---|---|
| 0 | 00000101 |
| 1 | 00001010 |
| 2 | 00000011 |
| 3 | 11110000 |
| 4 | 00101101 |
| 5 | 00001111 |
| 6 | LOAD R2, @5 |
| 7 | LOAD R1, @3 |
Registros de la CPU:
| Registro | Contenido |
|---|---|
PC | 6 |
RI | — |
R1 | — |
R2 | — |
Utilizaremos el modelo simplificado estudiado en clase, en el que cada instrucción ocupa una posición de memoria.
Explica la ejecución de la instrucción almacenada en la dirección 6, siguiendo estos pasos:
- Búsqueda: Indica cómo se obtiene la instrucción y qué valores tendrán el
PCy elRI. - Decodificación: Identifica la operación, el registro de destino y la dirección de memoria.
- Lectura del dato: Explica cómo intervienen los buses para obtener el dato.
- Almacenamiento: Indica qué registro recibe el dato y cuál es su nuevo contenido.
Completa una tabla con el estado de los registros al finalizar la instrucción.
4. Siguiente instrucción
Partiendo del estado final del ejercicio anterior, la CPU continúa ejecutando el programa.
- ¿Qué dirección contiene ahora el
PC? - ¿Qué instrucción se obtiene de esa dirección?
- ¿Qué operación debe realizar la CPU?
- ¿Qué valor tendrá el registro
R1después de ejecutarla? - ¿Qué valor tendrá el
PCal finalizar?
Representa el estado final de los registros PC, RI, R1 y R2 después de ejecutar ambas instrucciones.
5. Análisis del programa
A partir de las dos instrucciones ejecutadas, responde:
- ¿Se ha modificado algún contenido de la memoria principal?
- ¿Qué registros han cambiado durante la ejecución?
- ¿Qué función ha desempeñado el contador de programa?
- ¿Qué sucedería si una instrucción de salto modificase el valor del
PC?