Underc0de - La Casa de los Informáticos

Foros Generales => Dudas y pedidos generales => Mensaje iniciado por: TheJB en Abril 16, 2018, 05:06:08 PM

Título: Dirección de memoria
Publicado por: TheJB en Abril 16, 2018, 05:06:08 PM
Hola! Estoy estudiando un poco de ensamblador y, al llegar a la orden mov y el acceso de memoria por ej:
mov edx,[eax+55] = (edx = ¿la posición de memoria en el registro eax sumando 55?)

quise ir un poco mas allá y entender que son las posiciones en memoria.
Y en esto necesito la ayuda. Les traigo un par de preguntas... XD (pd:Me siento todo un newbie)

Si bien una posición de memoria se genera gracias al que el cpu manda señales en el bus de direcciones...

¿ En un procesador de 32 bits seria igual a (Un bus de dirección de 32 bits que permite especificar a la CPU 2 elevado a 32 = 4.294.967.296 direcciones de memoria distintas) ?

¿Ahora para un procesador de 64 bits se le asigna la misma operación pero cambiando la elevación a 64 siendo -> 2 elevado a 64 = 18446744073709551616 direcciones de memorias distintas?

¿Cuando hablamos de la posición de memoria,De que memoria estamos hablando :RAM,ROM,Etc,etc?

¿Para ustedes que significa la operación MOV:EDX,[EAX+55] ?

Espero averme entendido bastante bien en esta gran duda! Y agradecerles por tomarse el tiempo de poderme ayudar!

Título: Re:Dirección de memoria
Publicado por: sadfud en Abril 17, 2018, 03:20:17 AM
You are not allowed to view links. You are not allowed to view links. Register or Login or You are not allowed to view links. Register or Login
Hola! Estoy estudiando un poco de ensamblador y, al llegar a la orden mov y el acceso de memoria por ej:
mov edx,[eax+55] = (edx = ¿la posición de memoria en el registro eax sumando 55?)

quise ir un poco mas allá y entender que son las posiciones en memoria.
Y en esto necesito la ayuda. Les traigo un par de preguntas... XD (pd:Me siento todo un newbie)

Si bien una posición de memoria se genera gracias al que el cpu manda señales en el bus de direcciones...

¿ En un procesador de 32 bits seria igual a (Un bus de dirección de 32 bits que permite especificar a la CPU 2 elevado a 32 = 4.294.967.296 direcciones de memoria distintas) ?

¿Ahora para un procesador de 64 bits se le asigna la misma operación pero cambiando la elevación a 64 siendo -> 2 elevado a 64 = 18446744073709551616 direcciones de memorias distintas?

¿Cuando hablamos de la posición de memoria,De que memoria estamos hablando :RAM,ROM,Etc,etc?

¿Para ustedes que significa la operación MOV:EDX,[EAX+55] ?

Espero averme entendido bastante bien en esta gran duda! Y agradecerles por tomarse el tiempo de poderme ayudar!

- Que el procesador sea de 32/64 bits no quiere decir que disponga de 4.294.967.296/18446744073709551616 posiciones de memoria. Quiere decir que las palabras de memoria que es capaz de manejar son de ese tamaño.
- En este caso entiendo que la respuesta a tu pregunta es: RAM
- MOV:EDX,[EAX+55]. Esta instruccion lee el valor que contiene la posicion de memoria EAX+55 y lo almacena en EDX.