Test Foro de elhacker.net SMF 2.1

Programación => Programación General => ASM => Mensaje iniciado por: oPen syLar en 16 Enero 2011, 00:18 AM

Título: Deberia POPear los segmentos que no utilizo.?
Publicado por: oPen syLar en 16 Enero 2011, 00:18 AM
Buenas... Mi pregunta es sencilla.. Parece de logica.. Pero no me aclaro mucho con los segmentos...

Deberia de POPear los segmentos de registro al inicio de un programa cuando no los vaya a utilizar.? O eso lo hace automaticamente el programa.?

es decir.. Si no utilizo el DS.. ES.. SS.. Deberia..

pop ds
pop es
pop ss
push cs

mov ebx, 123
....
......
........
Título: Re: Deberia POPear los segmentos que no utilizo.?
Publicado por: Иōҳ en 21 Enero 2011, 01:33 AM
si no pusheas nada, no derias popear nada.... por logica.... a no ser que quieras que de crash!

almenos que estes haciendo algo especial... con todo el code que das no dices muxo :P
Título: Re: Deberia POPear los segmentos que no utilizo.?
Publicado por: Space.Medafighter.X en 21 Enero 2011, 01:41 AM
Deberías explicarte mejor, el código parece más bien un fragmento y no da una idea de lo que quieres hacer. Con el opcode "POP" estas sacando valores de la stack, y luego pusheas "cs" sin razon alguna...
Título: Re: Deberia POPear los segmentos que no utilizo.?
Publicado por: AleX Inc. en 13 Febrero 2011, 00:20 AM
para poder usar un POP primero debes haber hecho un PUSH (en la mayoria de loc casos)
el PUSH guarda en la pila y el POP remueve de la pila, si guardas algo y no lo remueves o tratas de remover algo que no esta guardado, por logica abra un error.