UTNianos

Versión completa: Duda tonta sobre direccionamiento de memoria (Arquitectura)
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Buenas, estoy estudiando arquitectura. Estoy con un ejercicio que me esta confundiendo un poco, dice así:

Una memoria almacena 8kb con palabras de 16 bits cada una, ¿Cuántos bits se necesitan para poder direccionarla?

Me confunde lo de "con palabras de 16 bits cada una".Es decir, que un procesador/SO trabaje con palabras de 16 bits, ¿Quiere decir que la cantidad de direcciones a las que puede hacer referencia es: 2^16=65536 direcciones posibles, no? Y eso implica que puede trabajar con una memoria de 65536/1024=64 kb .
Ahora bien,el ejercicio me pide cuantos bits se necesitan para poder direccionar 8 kb, supongo que exactamente (porque si mi razonamiento es correcto con 16 bits ya se puede hacer referencia a 8 kb), pero no entiendo para que te dice "con palabras de 16 bits", por lo que estoy seguro que algo estoy interpretando/entendiendo mal con el ejercicio en sí o el concepto de direccionamiento wall

Cualquier ayudita es bienvenida Feer
No, que funcione con palabras de 16 bits significa que es la mínima unidad que puede manejar como un bloque.
Si tenés 8kb (deberías escribir mejor esto: no es lo mismo "8kb" que "8kB", en adelante asumo la segunda) tenés 8192 bytes. Considerando bytes de 8 bits, cada palabra es de dos bytes, por lo que necesitás 4096 direcciones, que son 12 bits.
(19-10-2014 19:19)Dios escribió: [ -> ]No, que funcione con palabras de 16 bits significa que es la mínima unidad que puede manejar como un bloque.
Si tenés 8kb (deberías escribir mejor esto: no es lo mismo "8kb" que "8kB", en adelante asumo la segunda) tenés 8192 bytes. Considerando bytes de 8 bits, cada palabra es de dos bytes, por lo que necesitás 4096 direcciones, que son 12 bits.
Gracias, Dios! Ahora entiendo. Fsjal
Le hago un UP para pedir ayuda con otro ejercicio similar, quiero saber si lo estoy razonando bien, dice así:

Una memoria almacena 8KB con palabras de 8 bits cada una., ¿Cuántas lineas del bus de dato se necesitan para poder acceder a cualquier palabra?


Estuve leyendo, y si entiendo bien la teoría, la cantidad de lineas de un bus de direcciones, por ejemplo, es igual a la cantidad de bits que puede usar dicho bus para hacer referencia a memoria (Es decir, la capacidad de direccionamiento, que es lo que pedía el ejercicio que puse antes).

Ahora bien, en este ejercicio me pide la cantidad de lineas del bus de dato que se necesitan para acceder a cualquier palabra. Por lo que entiendo la cantidad de lineas de bus de datos es igual a la cantidad de bits que puede usar para hacer referencia al dato. Por lo cual el razonamiento sería igual que en el ejercicio anterior:
8 KB son 8192 B , lee palabras de 1 byte, ¿2 a la cuanto me da 8192?, y la respuesta es 13. Osea, necesito 13 lineas para poder acceder a cualquier palabra.

Estoy mandando fruta o está bien lo que digo xD?

Gracias de antemano.
El bus de datos es el que se usa para transmitir los datos. Cuando se presenta una dirección al... controlador de memoria (?) (no recuerdo el nombre exacto) se "habilita" una celda y se transmiten los datos por el bus de datos (para leer o para escribir). Entonces para palabras de ocho bits necesitás ocho líneas de bus de datos para poder transmitir todo de una sola vez.

Es medio rara la pregunta, pero creo que se refiere a eso. "Palabras de 8 bits" => "bus de datos de 8 líneas".
(01-11-2014 10:05)Dios escribió: [ -> ]El bus de datos es el que se usa para transmitir los datos. Cuando se presenta una dirección al... controlador de memoria (?) (no recuerdo el nombre exacto) se "habilita" una celda y se transmiten los datos por el bus de datos (para leer o para escribir). Entonces para palabras de ocho bits necesitás ocho líneas de bus de datos para poder transmitir todo de una sola vez.

Es medio rara la pregunta, pero creo que se refiere a eso. "Palabras de 8 bits" => "bus de datos de 8 líneas".
Ahh, claro. El bus de datos almacena la palabra y no la referencia, me estaba confundiendo lo de "una memoria de 8 KB". Y claro almacena una palabra, que el mismo ejercicio te está diciendo que es de 8 bits, entonces se necesitan 8 lineas. Ahora me queda claro.
Gracias, Dios. love
Cuidado con las palabras que usás (bueno, suena un poco amenazante... pero es para que no te confundas términos y/o conceptos): el bus no "almacena" nada, sólo transmite. En cualquier dirección (CPU → memoria | memoria → CPU), pero sólo transmite.
(01-11-2014 10:22)Dios escribió: [ -> ]Cuidado con las palabras que usás (bueno, suena un poco amenazante... pero es para que no te confundas términos y/o conceptos): el bus no "almacena" nada, sólo transmite. En cualquier dirección (CPU → memoria | memoria → CPU), pero sólo transmite.
Ahora que lo pienso de esa manera me queda más claro el concepto de "linea" de un bus. Me imagino cada linea llevando un impulso eléctrico que representa 0 o 1 de un componente al otro. Lo tendré en cuenta =D

PD: Antes lo visualizaba en mi cabeza como una cajita o una especie de registro temporal, no se, estoy re loco xD.
alguien conoce de un video explicativo de las memorias, por que leo pero algunas cosas parecen muy abstractas a menos que lo explique el profesor, yo falte a algunas clases
(01-11-2014 16:19)alvar escribió: [ -> ]alguien conoce de un video explicativo de las memorias, por que leo pero algunas cosas parecen muy abstractas a menos que lo explique el profesor, yo falte a algunas clases
Recién leo, fijate en Wikipedia, busca segmentación y paginación, están más claros los conceptos ahí que en el libro.
URLs de referencia