- Información
- Chat IA
Wuolah-free-Practica 3CODE2Cuadernode Soluciones 2023
Fundamentos de informática (2371115)
Universidad de Granada
Recomendado para ti
Comentarios
Otros documentos relacionados
Vista previa del texto
Practica3CODE2CuadernodeSolucion...
MG_Destroyer
Fundamentos de Informática
1º Grado en Ingeniería de las Tecnologías de Telecomunicación
Escuela Técnica Superior de Ingenierías Informática y de
Telecomunicación
Universidad de Granada
Reservados todos los derechos.
No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Fundamentos de Informática
Grado en Ingeniería de Tecnologías de Telecomunicación
Memoria de Prácticas
PRÁCTICA 3 : FUNCIONAMIENTO A BAJO NIVEL DE UN ORDENADOR: CODE- 2
a64b0469ff35958ef4ab887a898bd50bdfbbe91a- Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Banco de apuntes de la Fundamentos de Informática
####### Fundamentos de Informática Página 4 de 13
Práctica 3: Funcionamiento a Bajo Nivel de un Ordenador: CODE- 2
SOLUCIÓN:
- Codificación hexadecimal de la instrucción a cargar en M(H’0001): 2400
- Valor de r4 al finalizar la ejecución de la instrucción: 0000
- Valor de los biestables Z, S, C y V: Apagados, esto se debe a que no se ha hecho ninguna operación
aritmológica.
- Valor de PC: 0002 e IR: F000 después de ejecutarse la primera instrucción.
- Adjuntar: captura de pantalla en la que se visualice el estado de la máquina CODE-2 al ejecutar
las dos instrucciones.
Ejercicio 2 : Cargar una instrucción en la dirección H’0001 de memoria que asigne el valor
H’0000 al registro r4. Cargar una instrucción HALT en la dirección H’0002. Ayuda: usar la
instrucción LLI.
1. Ejecutar la instrucción almacenada en la posición H’0001 de memoria.
2. ¿Cuál es el valor que se almacena en r4 al ejecutar la instrucción?
3. ¿Se debería activar algún biestable? No, porque no se ha hecho una operación
aritmológica
4. ¿Qué valor toman el contador de programa (PC) y el registro de instrucción (IR) al
ejecutarse la primera instrucción?
5. Asigna los siguientes valores decimales a los registros: r0=D’1, r1=D’-1. Recuerda que
CODE2 almacena los enteros en complemento a 2 con 16 bits.
6. Introduce la instrucción ADDS r2, r0, r1 en la posición de memoria H’0005.
7. Introduce la instrucción HALT en la posición de memoria H’0006.
8. Ejecuta paso a paso el programa que comienza en la posición de memoria H’
9. ¿Cuál es el valor que se almacena en r2? ¿Se ha activado algún biestable?
a64b0469ff35958ef4ab887a898bd50bdfbbe91a-
En la uni las notas de olvidan, pero las fotos son eternas ¡Clic aquí!
Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Fundamentos de Informática Página 5 de 13 Práctica 3: Funcionamiento a Bajo Nivel de un Ordenador: CODE- 2
SOLUCIÓN:
- Completar tabla: MEMORIA INSTRUCCIÓN MÁQUINA INSTRUCCIÓN MÁQUINA EN HEXADECIMAL H’0010 LLI rD, H’1 3 2D H`0011 BR C 000 H’0012 SUBS r0, r1, r2 7012 H,0013 ADDS r0, r1, r2 6012 H’0014 SHR r2 A H’0015 HALT F
- ¿Hay alguna instrucción que nunca se ejecute?: Posición de memoria H’0012; la resta debido al salto
- Ciclos totales a ejecutar: (6+6+7+7+6+6) = 38
- Valor final de r2: 0001
Relación entre el valor final e inicial de r2:
####### Lo único que ha cambiado en r2 ha sido el SHR; ha cambiado su valor H’0002 a H’
Ejercicio 3 : Cargar las siguientes INSTRUCCIONES directamente a partir de la posición H’
de memoria de CODE-. Rellenar las casillas vacías de la tabla:
1. Ejecutar este pequeño programa (dirección de inicio: H’0010).
2. ¿Hay alguna instrucción que nunca se ejecute?
3. ¿Cuál es el valor de r2 después de ejecutar la primera instrucción?
4. ¿Cuántos ciclos tarda en ejecutarse el programa completo?
5. ¿Cuál es el valor final de r2?
a64b0469ff35958ef4ab887a898bd50bdfbbe91a- Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
####### Fundamentos de Informática Página 7 de 13
Práctica 3: Funcionamiento a Bajo Nivel de un Ordenador: CODE- 2
SOLUCIÓN:
- Fichero resta:
(copiar el texto del fichero .ASM)
####### ORG H'
####### LLI r1, H'FD
####### LHI r1, H'FF
####### LLI r2, H'
####### LHI r2, H'
####### SUBS r3, r1, r
####### HALT
####### END
- Fichero resta:
(copiar el texto del fichero .EHC)
- ¿Qué valor se almacena en r 6? R 6 = H’FFFC
- Adjuntar: captura de pantalla en la que se visualice el estado de la máquina CODE-2 al ejecutar el
programa completo.
Ejercicio 5 : Repite el Ejercicio 4 para que el programa quede almacenado en el fichero
resta y realiza las siguientes modificaciones:
- Sitúa el inicio del programa en la posición H’0100 de memoria.
- Asigna los siguientes valores decimales a los registros: r5=D’-3, r3=D’1. Recuerda que
CODE2 almacena los enteros en complemento a 2 con 16 bits.
o Ayuda: usa las instrucciones LLI y LHI antes de realizar la resta para asignar
valores inmediatos.
Una vez implementadas las modificaciones:
1. Escribe el programa y guárdalo como el fichero RESTA. Ensambla el programa
(genera el fichero RESTA).
2. Edita el fichero RESTA con un visor de texto (bloc de notas, por ejemplo).
Observa las diferencias con el fichero RESTA y distingue código fuente de
código máquina.
3. Carga el programa en memoria de CODE-2.
4. Ejecútalo paso a paso.
5. ¿Cuál es el valor almacenado en r6 al finalizar el programa?
1.
a64b0469ff35958ef4ab887a898bd50bdfbbe91a-
Duerme bajo las estrellas del Sahara ¡Clic aquí!
Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
####### Fundamentos de Informática Página 8 de 13
Práctica 3: Funcionamiento a Bajo Nivel de un Ordenador: CODE- 2
SOLUCIÓN:
1. Organigrama completo.
Ejercicio 6 : A partir de la dirección H’0015 de memoria existe un conjunto de 10 datos
enteros. Realizar un programa que muestre iterativamente el contenido de cada posición de
memoria por OP’02. El programa comienza en la dirección H’0030 de memoria. Nombre del
fichero: tabla.
1. Realizar un organigrama en el que se muestre como se plantea el algoritmo.
2. Asignar en una tabla cada variable a un registro del banco de registros.
3. Escribir el programa en ensamblador.
4. Ejecutar el programa paso a paso y verificar su correcto funcionamiento.
5. Calcular el tiempo que tardaría en ejecutarse el programa completo en un CODE- 2
cuyo reloj funcionara a 3,5 Mhz.
a64b0469ff35958ef4ab887a898bd50bdfbbe91a-
En la uni las notas de olvidan, pero las fotos son eternas ¡Clic aquí!
Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
####### Fundamentos de Informática Página 10 de 13
Práctica 3: Funcionamiento a Bajo Nivel de un Ordenador: CODE- 2
3. Programa en ensamblador y lenguaje máquina.
- Adjuntar: captura de pantalla en la que se visualice el estado de la máquina CODE-2 al ejecutar el
programa completo.
####### Direcc. Instrucción máq. Explicación
####### Nemónico HEX
####### 0030 LLI r0,00 2000 Inicializar r0 a 0
####### 0031 LLI r1,01 2101 Inicializar r1 a 1
####### 0032 LLI r2, 0A 220A R2 = H’000A
####### 0033 LLI r3, 00 2300 R3 = H’
####### 0034 Bucle: ADDS rD,
####### r3, rD
####### 6D30 rD = i
####### 0035 LD r4, [rD + H’15] 0415 Se carga en R4 el valor que había en la posición de
####### memoria H’
####### 0036 OUT OP02, r4 5402 Muestra el dato por OP
0037 ADDS r3, r3, r1 6331 Se le suma 1 a i (i++)
0038 SUBS r5, r3, r2 7532 Comprobador, si sigue siendo negativo volverá al bucle
0039 LLI rD,lo(bucle) 2D34 LLI rd, H'
003A LHI rD,hi(bucle) 3D00 LHI rd, H'
003B BS C200 Si es negativo, salta al bucle
####### 00 3C HALT F000 Final del programa
a64b0469ff35958ef4ab887a898bd50bdfbbe91a-
Viajar nunca fue tan barato. Marruecos en 3 días ¡Clic aquí!
Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
####### Fundamentos de Informática Página 11 de 13
Práctica 3: Funcionamiento a Bajo Nivel de un Ordenador: CODE- 2 a64b0469ff35958ef4ab887a898bd50bdfbbe91a-
Hay clicks que permanecen en el recuerdo toda la vida ¡Compruébalo aquí!
Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Fundamentos de Informática Página 13 de 13 Práctica 3: Funcionamiento a Bajo Nivel de un Ordenador: CODE- 2
####### 1. Tenemos en memoria una tabla desordenada que comienza en la dirección H’0101 y cuyo tamaño
####### viene especificado en la dirección de memoria H’0100. Queremos trasladar aquellos elementos de la
####### tabla que sean pares a una tabla que comience en la dirección de memoria H’0150 y finalmente dar por
####### OP1 el número de elementos transferidos. Cargar el programa a partir de la posición H’0050.
Ejercicio 8 : se debe elegir 1 de los 6 ejercicios relacionados en el apartado 8, aunque se
recomienda hacer alguno más para afianzar los conocimientos adquiridos. Los ficheros
.ASM contendrán, además de la implementación de los programas, las directivas DATA
para cargar datos de prueba que cubran todos los casos posibles.
¿Qué material hay que generar?
Para el ejercicio elegido:
- Organigrama: realizado con cualquier programa que el estudiante considere apropiado.
- Tabla de asignación de variables del organigrama a registros de CODE-2.
- Fichero .ASM: conteniendo la implementación del programa y la inserción de datos de
prueba.
a64b0469ff35958ef4ab887a898bd50bdfbbe91a- Reservados todos los derechos. No se permite la explotación económica ni la transformación de esta obra. Queda permitida la impresión en su totalidad.
Wuolah-free-Practica 3CODE2Cuadernode Soluciones 2023
Asignatura: Fundamentos de informática (2371115)
Universidad: Universidad de Granada
Esta es una vista previa
Accede a todos los documentos
Consigue descargas ilimitadas
Mejora tus calificaciones
Esta es una vista previa
Accede a todos los documentos
Consigue descargas ilimitadas
Mejora tus calificaciones
¿Por qué está desenfocada esta página?
Esta es una vista previa
Accede a todos los documentos
Consigue descargas ilimitadas
Mejora tus calificaciones
¿Por qué está desenfocada esta página?
Esta es una vista previa
Accede a todos los documentos
Consigue descargas ilimitadas
Mejora tus calificaciones
¿Por qué está desenfocada esta página?
Esta es una vista previa
Accede a todos los documentos
Consigue descargas ilimitadas
Mejora tus calificaciones
¿Por qué está desenfocada esta página?
Esta es una vista previa
Accede a todos los documentos
Consigue descargas ilimitadas
Mejora tus calificaciones