Título: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: Avoidance25 en 10 Noviembre 2009, 17:59 pm Lo que quiero hacer es una funcion que me trabaje sobre 3 cadenas de texto, y que se le den las direcciones de memoria en las que comienzan las cadenas como argumentos.
Algo asi: Código
Ahora, lo que NO quiero es tener que guardar estas direcciones de memoria en eax para acceder a la memoria, ya que tendria que estar rotando las 3 cadenas por eax. ¿Hay alguna forma de acceder a la direccion de memoria a la que apunta el contenido de una variable?. Tenia entendido que esto se puede lograr si no se usan los [], pero probe de muchisimas maneras y no me funciono :( Título: Re: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: YST en 10 Noviembre 2009, 18:24 pm Existen mas registros que eax , puedes mover una a ebx otra a edi y otra a esi :P
Título: Re: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: [L]ord [R]NA en 10 Noviembre 2009, 19:29 pm Antes que todo... estas seguro que sabes programar en ASM, te recomiendo que leas sobre los registros y sobre el Stack
Título: Re: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: MCKSys Argentina en 10 Noviembre 2009, 21:46 pm Pues EAX es el registro mas usado... :rolleyes:
Puedes intentarlo con ECX ó EDX ó el que mas te guste (trata de no tocar EIP ;D) Ahora, cuando salgas con algo como: "no quiero usar el stack", ahi si... cambia de lenguaje :xD Saludos! Título: Re: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: Avoidance25 en 10 Noviembre 2009, 22:37 pm Existen mas registros que eax , puedes mover una a ebx otra a edi y otra a esi :P Ahhh, muchas gracias, voy a hacerlo de esa manera. Solo es que pensaba que se podia acceder directamente.....Antes que todo... estas seguro que sabes programar en ASM, te recomiendo que leas sobre los registros y sobre el Stack Pues obviamente estoy aprendiendo, si lo supiera todo no estaria preguntando.Puedes intentarlo con ECX ó EDX ó el que mas te guste (trata de no tocar EIP ;D) Ya entendi este punto con el mensaje de YST, grax.Ahora, cuando salgas con algo como: "no quiero usar el stack", ahi si... cambia de lenguaje :xD ¿Que tiene de malo ASM?. De todas formas no pienso hacer todo el programa en ASM, solo la parte que de otra forma tardaria mucho tiempo en ejecutarse.Pero la gran p***, se que la pregunta es de un principiante, pues en ASM eso soy, pero no es necesario que respondan de manera negativa. Todos fueron principiantes alguna vez, no? Título: Re: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: MCKSys Argentina en 11 Noviembre 2009, 01:27 am El tema no es la pregunta, sinó el tipo de pregunta.
¿ Porqué no quieres usar EAX ? :huh: Eso no tiene lógica... Por eso las respuestas. ;D Saludos! Título: Re: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: Eternal Idol en 11 Noviembre 2009, 01:37 am El tema no es la pregunta, sinó el tipo de pregunta. ¿ Porqué no quieres usar EAX ? :huh: Eso no tiene lógica... Por eso las respuestas. ;D Es que hay que leer el hilo completo no solo el titulo ;) Título: Re: ¿Como puedo acceder a direcciones de memoria sin usar eax? Publicado por: Avoidance25 en 11 Noviembre 2009, 15:43 pm El tema no es la pregunta, sinó el tipo de pregunta. No quiero usar eax porque necesito manejar 3 punteros de memoria. Sobre todo hice esta pregunta porque pensaba que se podia acceder a la memoria directamente, de hecho, creo que utilizaba variables de esta manera antes (hace mucho tiempo usaba ASM de 16 bits, y no volvi a tocar ASM hasta hace unos pocos dias).¿ Porqué no quieres usar EAX ? :huh: Eso no tiene lógica... Por eso las respuestas. ;D Saludos! Y se que puedo ir rotando, pero si hago el programa (o esta parte del programa al menos) en ASM es porque necesito que sea rapido, y si hay una forma de acceder directamente a estas direcciones de memoria me viene perfecto. En fin, si no se puede hacer de esta manera voy a usar eax, ebx y edx. |