Cargando

jueves, 6 de septiembre de 2012

Memoria - Parte III: Memoria - Cálculo

¡Hola! Vamos a continuar con las lecciones, espero que hayan repasado porque esta lección es un poco más grande de lo habitual.



Empecemos por hablar rápidamente sobre los buses que existen en el computador. El bus es un circuito impreso por donde fluye la información, si miras la mainboard te darás cuenta enseguida cuáles son. Son tres los más importantes: Bus de Datos, Bus de Control y Bus de Direcciones. 

Bus de Datos

Como su nombre lo indica transporta los datos del procesador al dispositivo requerido o viceversa, por ende, es bidireccional.

Bus de Control

Transporta las señales de reloj entre los dispositivos, por lo tanto, controla la ejecución de las instrucciones (También llamadas operaciones).

Bus de Direcciones

Brinda el lugar lógico o la dirección en la memoria donde se encuentra el dispositivo.

¡Empecemos con los cálculos!

1. Digamos que tienes una memoria de 16 bits de Bus de Datos y 12 bits de Bus de Direcciones. ¿Cuál crees que sería la capacidad de la memoria?

¡Simple! Si tienes un bus de Datos de 16 bits, entonces está transportando 2B (Bytes). ¿Recuerdas que 8 bits es un byte? 2B sería el ancho de Bus de datos. 

8 bits      ----   1 Byte
16 bits    ----   2 Bytes.

¿Te das cuenta? La capacidad de la memoria simplemente se consigue multiplicando el ancho de bus de datos con el espacio de direccionamiento. 

Capacidad de Memoria = Ancho de Bus de datos x Espacio de Direccionamiento.

¿Cómo es el espacio de Direccionamiento? Solo es 2 elevado al Bus de Direcciones. No es tan difícil como parece. Para ayudarte, veamos lo siguiente, les va a servir mucho.

2^10 (2 elevado a la 10): 1KB.
2^20: 1MB.
2^30: 1GB.

¡Ahora sí calculemos la capacidad de la memoria!

Capacidad de Memoria = Ancho de Bus de datos x Espacio de Direccionamiento.
Capacidad de Memoria = 2B x 2^12.

Descomponiendo...

Capacidad de Memoria = 2B x 2^10 x 2^2

Porque cuando la base es la misma los exponentes se suman. O sea, 2^10x2^2 es igual a 2^12. Entonces, de la misma manera puedes descomponer 2^12 en 2^10x2^2. Espero que eso haya quedado claro si no lo sabías.

¿Recuerdas cuánto es 2^10? Así es, es 1KB. Es fácil saber por qué. Si resuelves 2^10 te da 1024 y 1KB equivale a 1024B.

Entonces reemplazando...

Capacidad de Memoria = 2 x KB x 2^2
Capacidad de Memoria = 2 x KB x 4
Capacidad de Memoria = 8KB.

¡Listo! ¡La memoria es de 8KB!. Bastante poco, ¿Verdad?

Veamos otro ejercicio para que entiendas mejor.

2. Tienes una memoria de 8 bits de Bus de Datos y 16 bits de Bus de Direcciones. ¿Cuál es el ancho de Bus de Datos y cuál es la capacidad de la memoria?.

¡Empecemos! Sería mejor si intentas hacerlo tú primero/a. Resolvamos el ancho de Bus de Datos primero, de todas maneras, lo necesitamos para resolver la capacidad de la memoria. Además, está bien fácil, porque justo sabes que 8 bits es 1B y justo te dan 8 bits. Entonces, ¿Cuánto es el ancho de Bus de Datos? Pues sí, es 1B.

Recuerda: Capacidad de Memoria = Ancho de Bus de datos x Espacio de Direccionamiento.

Capacidad de Memoria = 1B x 2^16.
Capacidad de Memoria = 1 x 2^10x2^6.
Capacidad de Memoria = 1 x 2^6 x KB.
Capacidad de Memoria = 64 KB.

¡Eso es todo! Rpta: El ancho de Bus de Datos es 1B y la capacidad de la memoria es de 64KB.

Ahora una un poco más difícil. ¡Ánimo!

3. Tienes una memoria con un Bus de Datos de 24 bits y un Bus de Direccionamiento de 32 bits. Calcula su capacidad y cuántos archivos de 128KB puede almacenar si tiene el 75% de la memoria ocupada.

¡Manos a la obra!

Empecemos por la capacidad, porque eso ya lo sabes hacer bien.

Ancho de Bus de Datos:

8 bits     ----   1B
24 bits   ----   3B

O sea, 24/8 (24 entre 8): 3.

Capacidad de Memoria = Ancho de Bus de datos x Espacio de Direccionamiento.
Capacidad de Memoria = 3B x 2^32.
Capacidad de Memoria = 3 x 2^30 x 2^2.
Capacidad de Memoria = 3 x GB x 4.
Capacidad de Memoria = 12 GB.

¡Listo, la memoria es de 12 GB. Jeje, mucho más aceptable.

Pero, la memoria está ocupada al 75% y obviamente tienes que ver cuántos archivos alcanzan en el espacio libre. Entonces si está ocupada el 75%, queda libre el 25% de la memoria. ¿Lo ves, verdad?

Pongámoslo así para que vea más obvio: Toda la memoria es un 100% y se ocupa el 75%. ¿Cuánto queda? Pues 100 - 75. Te queda 25% para que puedas almacenar más datos.

25% de 12GB: 25 x 12 =  1/4x12. Simplificando, te queda 3GB.
                        --
                       100

Ahora, lo demás es simplemente regla de tres simple, igual que como se resolvió el ancho de Bus de Datos. Pero los archivos están en KB y tu memoria está en GB. Hay que pasarlo a KB.

Esto es fácil. ¿Recuerdas la lección "Sistemas Digitales"? Espero que sí. En esa lección te dije lo siguiente:

1 KB : 1024 B.
1GB: 1024x1024x1024 B.

Solo tienes que reemplazar.

1 GB: 1024x1024x KB.

Entonces 3 GB sería 3x1024x1024 KB. No lo resolvamos, nos conviene así para poder simplificar más a gusto.

¡Ahora la regla de tres simple!

 1 archivo --- 128 KB.
x archivos --- 3x1024x1024KB.

x = 3x1024x1024KB x 1
      ----------------------
                128 KB

Sabiendo que 1028 x 8 = 1024, lo simplificamos y de paso, también, simplificamos el KB.

x = 3x1024x8
      ----------
             1

x =  24x1024
x = 24 576 archivos.

En resumen, la memoria es de 12 GB, pero solo estaba libre 3GB. En ese espacio (de 3GB) solo pueden entrar 24 576 archivos.


¡Eso es todo por hoy, hasta la próxima! La siguiente lección será: El procesador.
Espero que no haya estado muy cargada la lección. (°~°)


21 comentarios:

  1. Gracias x l aporte realmente bueno y facil dee entender. Sigue asi y de nuevo gracias.

    ResponderEliminar
  2. me podrias explicar este ejemplo :

    Una memoria tiene 18 bits de bus de direcciones y 12 bits del bus de datos.
    ¿Cuál es su capacidad en bytes?

    ResponderEliminar
    Respuestas
    1. La capacidad de almacenamiento seria:

      X= 12 * 2 elevado a 18 y dividido entre 8 = 393 218 Bytes

      Eliminar
  3. Está muy bien explicado, por fin lo he entendido

    ResponderEliminar
  4. me podrias ayudar en este ejemplo:
    Que capacidad tiene una memoria de 8bits de datos y 128k locaciones..??

    ResponderEliminar
  5. visiten estas paginas

    http://www.transcend-info.com/Global.aspx

    https://www.facebook.com/pages/Transcend-America-Latina/113006935702988?pnref=lhc

    ResponderEliminar
  6. Este comentario ha sido eliminado por el autor.

    ResponderEliminar
  7. Esta bueno karnal, me ayudaste mucho Saludos de Veracruz Mexico

    ResponderEliminar
  8. Gracias por la explicación, me ha servido de mucho.

    ResponderEliminar
  9. Me parece que así no se calcula la capacidad que se requiere para una computadora

    ResponderEliminar
  10. Tu explicación fue excelente. Me has ayudado mucho para el quiz que tengo el martes.
    Muchas gracias.

    ResponderEliminar
  11. Muy bien explicado, es justo lo que necesitaba.
    ¡Gracias!

    ResponderEliminar
  12. Memoria consta de 8k palabras de 32 bits ¿cuál es el tamaño del bus de datos y de dirección?

    ResponderEliminar
  13. Relacione tamaño físico en Bytes de una memoria digital con su cantidad de líneas de direcciones.

    ResponderEliminar
  14. Un computador tiene 16Mb de memoria, ¿Cuantos bits se requieren en el bus de direcciones del procesador para poder acceder a la totalidad de la memoria instalada?, considere una longitud de palabra de 8bist (1B)

    ResponderEliminar
  15. Creo que los cálculos son incorrectos. No entiendo como puedes ser capaz de multiplicar Bytes con Bits o un Byte con un KB son medidas diferentes. Vete a reparsarlo, anda.

    ResponderEliminar
  16. Si una memoria rom tiene un bus de direcciones de 20 lineas cual es la capacidad de direccionamiento??

    ResponderEliminar
  17. a ver si alguien pudiera solucionarme este problemilla:
    En un computador que tiene una memoria de longitud de palabra de 32bits y su capacidad maxima de512Mb, ¿que tamaño tiene el registro de puntero de pila (SP)?

    ResponderEliminar
  18. No lo encuentro por ningun lado: ¿Cuántos bits se necesitan para direccionar 68719476736 lugares de memoria?

    ResponderEliminar