Mailing List del Fortunae LUG ============================= > _start: > xor %ebp,%ebp Azzera ebp > pop %esi Mette in esi il puntatore all'inizio dell'array dei puntatori ai parametri. (cacchio... questo è figo... glielo copio) > mov %esp,%ecx Mette in ecx il numero dei parametri. > and $0xfffffff0,%esp Fa sto and del contenuto dell'inidirizzo di memoria $0xfffffff0 (sarebbe circa -16 no?) con esp e mette il risultato in $0xfffffff0... boh. > push %eax > push %esp > push %edx > push $0x0 > push $0x0 > push %ecx > push %esi > push $0x0 Pusha un pò di cacchiate sullo stack, sicuramente sono parametri che serviranno alla call seguente. Eax non so cosa contenga in questo caso... esp è il puntatore all'inizio dell'array dei puntatori ai parametri, edx avrà della roba che sa lui... poi pushare un pò di zeri non fa mai male, poi si perchè no pushamo anche il numero dei parametri... e via in bellezza anche uno zero che non si sa mai. > call 1d <_start+0x1d> Chiamiamo sto inidirizzo che conterrà sicuramente roba figa di cui io ignoro l'utilità. > hlt Mette il processore in stato di halt (figo:) > mov %esi,%esi Eh si questo era del tutto essenziale Comunque perchè non ti leggi questi tre manuali di circa 400 pagine ciascuno? http://www.intel.com/design/pentium4/manuals/ ...poi ti interrogo. Simon. -- <simon> ho capito una cosa stasera, non devo uscire quando non ho voglia di uscire...