bladehack escribió:Walky escribió:bladehack escribió: ¿Esos bits de direccion disponibles supongo que son las ultimas lineas de direccionamiento, Ax, del Chip (al igual como explicaron anteriormente)?
Si entiendes cómo funcionan los números binarios, o más específicamente el qué pasa al agregar un 1 a la izquierda de una cifra binaria, se hace mucho más fácil entender esto de los multijuegos y de la selección de bancos de memoria.
Si mal no recuerdo, el agregar un cero por la izquierda a un numero binario es dividirlo por 2. Si te refieres a eso te entiendo perfectamente. Ahora con un 1 no se lo que pasa, o si hay alguna relacion especifica. Pero de todas formas supongo que eso relaciona el dividir la memoria en segmentos segun una requiera.
Saludos

Si agregas un cero a la izquierda de un número binario, el número se mantiene exactamente igual. Con los 1 pasa algo bien interesante; te lo ilustro con un ejemplo para que quede más claro:
Tomemos los números binarios posibles de 3 cifras, en orden de menor a mayor:
000
001
010
011
Sigamos contando...
100
101
110
111
Si te fijas, toda la segunda mitad tiene un 1 a la izquierda, y los siguientes dos cifras se repiten en la primera y segunda mitad. O sea, progresivamente se van combinando 1s y 0s con un orden que permite que el número solamente vaya aumentando.
Ahora bien, si cada cifra fuese un bit de dirección de eprom, serían A1, A2 y A3
de derecha a izquierda. Usemos este caso para imaginar que tenemos una eprom con 8 direcciones posibles (o sea, las combinaciones de A1, A2 y A3) y le queremos poner 2 juegos o datos distintos: basta con que el primer juego tenga siempre un 0 en A3, y el segundo un 1.
Vayamos más lejos aún: imaginemos que queremos meter 4 juegos en la misma memoria. En ese caso ocuparemos las 2 cifras de más a la izquierda para seleccionar cada uno de los 4 juegos (00, 01, 10 y 11) y la última para el juego en sí (pudiendo ser 0 ó 1). Obviamente en este caso el juego sólo puede pesar la mitad que en el ejemplo con sólo 2 juegos.
Uno puede aplicar lo mismo a eproms con muchas más direcciones; por ejemplo 20 bits de dirección, usando el o los bits mayores de dirección ("los de más a la izquierda") para seleccionar el juego, y el resto para guardar los datos.
Ahora bien; sobre lo de poner ceros a la izquierda, como ya lo dije no cambia nada.
Decir:
111
es exactamente lo mismo que decir
0111
y lo mismo que decir
00000000111
En cambio, si agregamos un 1 a la izquierda, estamos doblando la cantidad de datos. En el caso anterior pasaría de ser 0111 (o sea, 111) a 1111.
Si convertimos a decimal:
0111 es 7
1111 es 15
¡pero 7+7= 14! dirás. Pues no, ya que hay que considerar el 0 como una cifra válida.
7 con el 0 = 8 posibles direcciones
15 con el 0 = 16 posibles direcciones