[2016][Diciembre][Pregunta 3]

[2016][Diciembre][Pregunta 3]

de Agustín Torres Mari -
Número de respuestas: 3

Buenas, viendo la solución del examen de diciembre de 2016, me surgieron dos dudas.

La primera es si el digito apuntado por la flecha roja esta de más, pues las direcciones son de 32 bits.

La otra es que no me termina de quedar del todo claro como calcula entre que direcciones esta almacenada la linea de la cache que contiene a la direccion 0x4C3D2E1F.

Saludos, Agustin.


En respuesta a Agustín Torres Mari

Re: [2016][Diciembre][Pregunta 3]

de Alexis Alfonso -
Lo que yo entiendo es que, como cada línea siempre almacena una cantidad potencia de 2 (en este caso 2⁵) de palabras, entonces la primer palabra de cualquier bloque siempre va a ser una que termina con 0s (en este caso, cinco ceros) y la última palabra de ese mismo bloque siempre termina con 1s (en este caso, cinco unos). En este caso, el bloque de la dirección 0x4C3D2E1F termina con cinco 1s, entonces esa dirección ya es la última palabra de este bloque:

0x4C3D2E.0000.0000 = 0x4C3D2E00 (la primera)
0x4C3D2E.0001.1111 = 0x4C3D2E1F (la última)

Por lo tanto, yo pienso que el dígito que está sobrando en la solución no es el bit que marcaste sino el "1".
En respuesta a Alexis Alfonso

Re: [2016][Diciembre][Pregunta 3]

de Federico Rivero -

Correctísimo lo que dice Alexis (por favor, en un examen no usen la notación que mezcla hexadecimal y binario en el mismo número, aunque en este caso creo que favorece a la explicación).

Ya corregí la solución.

Saludos,

          Federico