¿Cuántas direcciones se requieren para este sistema?

0

Si un sistema tiene RAM que contiene 16K bytes, cada uno de ellos necesita su propia dirección distinta y además tiene 16 periféricos y cada uno requiere 2 ^ 4 direcciones distintas, ¿cuántas direcciones totales se requieren para este sistema? Según lo que sé sobre la memoria, creo que es 2 ^ 16k + 16 * 2 ^ 4, pero no estoy seguro de cómo traducir bytes a bits. Sé que si un sistema tiene 15 bits, requiere 2 ^ 18 direcciones distintas, pero ¿qué pasa con los bytes?

    
pregunta Josh Susa

2 respuestas

1

El número total de direcciones en uso en el sistema descrito sería 16384 + 16 * 2 ^ 4 para un total de 16640 direcciones. Para direccionar 16640 direcciones, necesita un bus de direcciones con al menos 15 líneas de direcciones, que podrían abordar un máximo de 32768 direcciones, por lo que no se utilizarían 16128 direcciones. Esto es asumiendo que su RAM está organizada en palabras de 8 bits y que se lee de 8 bits a la vez. Si, por ejemplo, la RAM está organizada en palabras de 16 bits, entonces cada dirección accederá a dos bytes de RAM, entonces necesitará (16k / 2) = 8192 + 16 * 2 ^ 4 o 8448 direcciones. Cada periférico sigue teniendo una dirección, pero como cada dirección de RAM tiene ahora un ancho de 16 bits, solo necesita la mitad de direcciones para la RAM, pero necesita 16 líneas de bus de datos. Si su RAM está organizada en palabras de 32 bits, entonces necesita 4096 + 16 * 2 ^ 4 o 4352 direcciones, si para las palabras de 64 bits, 2048 + 16 * 2 ^ 4 o 2304 direcciones.

    
respondido por el Barry Nelson
0

En un sistema, cada byte se direcciona individualmente. Hay 1024 bytes en un k byte. Por lo tanto, un ram de 16k necesitaría 1024 * 16 = 16384 direcciones. Agregue a eso 16 * 2 ^ 4 para los periféricos y obtendrá 16640. Entonces, necesitará al menos 15 bits para representar esas direcciones.

    
respondido por el vini_i

Lea otras preguntas en las etiquetas