Autor
|
Tema: ¿Como puedo acceder a direcciones de memoria sin usar eax? (Leído 6,360 veces)
|
Avoidance25
Desconectado
Mensajes: 12
inot !!!
|
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: ;void MiFuncion(char *string1, char *string2, char *string3); proc MiFuncion string1, string2, string3 ret endp
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
|
|
|
En línea
|
--Recuerda siempre que eres único… Exactamente igual que todos los demás. --Diplomacia es el arte de decir “bonito perrito”… hasta que puedas encontrar una piedra. --Morir es como dormir, pero sin levantarse a hacer pis. --En las guerras, los soldados reciben las balas y los generales las medallas.
|
|
|
|
[L]ord [R]NA
Desconectado
Mensajes: 1.513
El Dictador y Verdugo de H-Sec
|
Antes que todo... estas seguro que sabes programar en ASM, te recomiendo que leas sobre los registros y sobre el Stack
|
|
|
En línea
|
|
|
|
MCKSys Argentina
|
Pues EAX es el registro mas usado... Puedes intentarlo con ECX ó EDX ó el que mas te guste (trata de no tocar EIP ) Ahora, cuando salgas con algo como: "no quiero usar el stack", ahi si... cambia de lenguaje Saludos!
|
|
|
En línea
|
MCKSys Argentina "Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."
|
|
|
Avoidance25
Desconectado
Mensajes: 12
inot !!!
|
Existen mas registros que eax , puedes mover una a ebx otra a edi y otra a esi 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 ) 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 ¿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?
|
|
|
En línea
|
--Recuerda siempre que eres único… Exactamente igual que todos los demás. --Diplomacia es el arte de decir “bonito perrito”… hasta que puedas encontrar una piedra. --Morir es como dormir, pero sin levantarse a hacer pis. --En las guerras, los soldados reciben las balas y los generales las medallas.
|
|
|
MCKSys Argentina
|
El tema no es la pregunta, sinó el tipo de pregunta. ¿ Porqué no quieres usar EAX ? Eso no tiene lógica... Por eso las respuestas. Saludos!
|
|
|
En línea
|
MCKSys Argentina "Si piensas que algo está bien sólo porque todo el mundo lo cree, no estás pensando."
|
|
|
Eternal Idol
Kernel coder
Moderador
Desconectado
Mensajes: 5.969
Israel nunca torturó niños, ni lo volverá a hacer.
|
El tema no es la pregunta, sinó el tipo de pregunta. ¿ Porqué no quieres usar EAX ? Eso no tiene lógica... Por eso las respuestas. Es que hay que leer el hilo completo no solo el titulo
|
|
|
En línea
|
La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste. Juan Domingo Perón
|
|
|
Avoidance25
Desconectado
Mensajes: 12
inot !!!
|
El tema no es la pregunta, sinó el tipo de pregunta. ¿ Porqué no quieres usar EAX ? Eso no tiene lógica... Por eso las respuestas. Saludos! 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). 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.
|
|
|
En línea
|
--Recuerda siempre que eres único… Exactamente igual que todos los demás. --Diplomacia es el arte de decir “bonito perrito”… hasta que puedas encontrar una piedra. --Morir es como dormir, pero sin levantarse a hacer pis. --En las guerras, los soldados reciben las balas y los generales las medallas.
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Como acceder a la memoria interna de un Xperi Mini Pro SK17
Dispositivos Móviles (PDA's, Smartphones, Tablets)
|
MissFortune
|
0
|
2,437
|
29 Junio 2013, 23:02 pm
por MissFortune
|
|
|
pantalla rota y no puedo quitar patron para acceder a la memoria
Android
|
fernando_751984
|
0
|
3,228
|
11 Agosto 2014, 20:46 pm
por fernando_751984
|
|
|
[Duda]Como resuelve el PE Loader direcciones de memoria en secciones ejecutables
Programación C/C++
|
BloodSharp
|
2
|
2,669
|
24 Septiembre 2014, 19:46 pm
por BloodSharp
|
|
|
Acceder a direcciones de memoria fuera de mi programa. Ensamblador y C
Hacking
|
dvpuchades
|
2
|
3,718
|
16 Diciembre 2014, 19:30 pm
por dvpuchades
|
|
|
¿Como usar varias direcciones IP en una pc?
Scripting
|
prismoups09
|
1
|
2,613
|
10 Enero 2016, 07:48 am
por Wick3D
|
|