Hola, posteo acá al no haber foro para el tema nuevo. En la página 2 de las notas a que se refiere con direcciones posibles para direccionar?
Estimado,
Gracias por avisar del foro! Ya lo habilité.
Con respecto a la pregunta, lo que se quiso decir es que como los registros tienen 16 bits, utilizando uno solo de ellos, se pueden obtener 2^16 números diferentes. Por lo tanto, se pueden referenciar 2^16 posiciones diferentes de memoria (es decir, se puede apuntar, direccionar a la posición 0, 1, 10, 11, 100, 101, así hasta la 1111...1111 (16 unos) ).
Saludos!
Federico
No sería en realidad 128 Kbytes? ya que el largo de cada palabra es 16 bits y puedo formar 65536 tiras de 16 bits no de 8 bits (1 Byte) en cuyo caso sí tendría 64 KBytes.
Es correcto esto?
Estimado,
No entendí tu mensaje, pero si aclara, 2^16 = 65536 = 64K
Saludos,
Federico
Juan,
Creo que tu confusión viene por el hecho de que Intel 8086 es una arquitectura de 16 bits, pero la memoria en 8086 se direcciona a nivel de byte, no de palabra. O sea que con 16 bits puedo direccionar 2^16 direcciones distintas (cada una "apunta" a un byte o al byte menos significativo de palabra). De ahí que con un registro podes "ver" una ventana de 64Kb de datos.
No confundir con el hecho de que hay instrucciones que leen/escriben palabras (2 bytes). En estos casos, al ser 8086 una arquitectura Little Endian, el byte menos significativo va a estar en la dirección que estés apuntando y el byte más significativo en la siguiente dirección segmentada. O sea, una palabra de 16 bits en 8086 "ocupa" 2 direcciones.
Saludos,
Gustavo
Bien, queda claro.
Gracias!