hola
tengo una duda, en ensamblador al crear una funciona usando
push ebp
mov ebp, esp
sub esp, 12
.... etc
..... etc
mov [ebp + 0x08], eax
call segundo
mov esp, ebp
pop ebp
ret 8
si hago esto, y abajo coloco una segunda función que seria para el call "segundo", para accesar a los datos de ebp de la primera funcion, ¿cambiaria?, por ejemplo para accesar tendría que usar, ¿esp?
segundo
mov eax, [esp + 0x08]
en otras palabras, lo que haya en ebp, afuera de una función cambiaría a esp?, o sigue siendo ebp afuera y adentro de cualquier función?
No cambiaría porque al retornar la funcion llamada "segundo", dejaría intacto de nuevo ebp y esp.
un saludo.
Ya te han respondido de todas formas te dejo un enlace con información al respecto para que sanes todas tus dudas:
Paso de parámetros y stack frame. (http://eidanyoson.8k.com/stack.htm)
Saludos!
Una recomendacion rapida... no toques ESP a menos que sea de extrema necesidad. Este registro esta reservado para la pila.