Ensamblador - ¿como vaciar la pila?

 
Vista:

¿como vaciar la pila?

Publicado por rodrigo lezama (5 intervenciones) el 07/03/2005 19:58:19
Hola y gracias por leer esto de antemano.
¿Alguien sabe algun metodo para vaciar la pila totalmente en
un programa de ensamblador?
Gracias, un saludo.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:¿como vaciar la pila?

Publicado por geergon (1 intervención) el 09/03/2005 05:28:01
Hola!
No entiendo
vaciar la pila? ....

Bueno que tal si utilizas la instracción POP. :-)
Ejemplo:
PUSH AX ;Ahora el valor de ax esta en la pila
POP BX ; Ahora el valor en la pila se libera y es devuelto en bx

O quizas si estás en un procedimiento y cargaste varios valores a la pila
puedes ejecutar la instracción RET con la cantidad de bytes extras a
liberar de la pila. Ejemplo RET 4.

O que tal si al iniciar el programa guardas el valor del
Stack Pointer (SP), y luego en alguna parte del código tomas
ese valor y se lo asignas de nuevo a SP.
Entonces el puntero de la pila regresara al valor inicial, por lo que se
puede decir que la pila se libera.

Att:George
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¿como vaciar la pila?

Publicado por Ronny (1 intervención) el 09/03/2005 19:40:14
Hola,

Para ingresar valores en la pila puedes usar PUSH y para sacar valores de esta esta POP, luego hay un puntero o registro del procesador para el control de la misma.. SP ....

un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:¿como vaciar la pila?

Publicado por explicate mas (1 intervención) el 10/03/2005 05:57:10
mov esp, ebp
o
xor eax, eax
mov ecx, ebp
sub ecx, esp
mov edi, esp
push ecx
shr ecx, 2
rep stosd
pop ecx
and ecx, 3
rep stosb

para poner en 0 toda la pila y no te sevira de nada seguro es lo primero.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar