Gracias Eternal Idol, y como pongo ese mismo codigo, pero k sea para 32 bits? Eske yo lo cogi de un manual, q decia k era para archivos .exe, y crei k todos los exe eran para 32 bits. Pues bien, necesito este mismo programa, pero q sea para 32 bits, ayuda xfa !!Saludos.
Si, lo q keria hacer es un programa para Windows, un exe, de 32 bits. Pero una cosa, si lo quisiera para unix, el codigo asm seria el mismo, porque solo depende del cpu, lo q variaria serian las instrucciones antes del codigo no??Pues ya te digo, lo q queria hacer de momento es un programa, con este codigo , q sea de 32 bits para Windows. Este programa me funciona, pero no es de 32 bits, q es lo q quiero, y lo mejor. Si intento poner los registros extended con la "e", no lo reconoce el tasm, q tengo q hacer??
1. Mire el programa, me se me parecio mucho a un compilador de C o C++. COn sus librerias. headers y demas. Pero digo una cosa, para q necesito todas esas birerias y prototipos de funciones si estoy programando en ensamblador? Por ej, lo que me dijiste en el post anterior de WriteFile y GetStdHandle, q son, funciones, la 1 para escribir un archivo? Esque no parece ensamblador, xq en ensamblador segun tenia entendido, para escribir en un archivo tenias q invocar un rutina de SO, poniendo el num de puntero de la IDT en dx, (sino recuerdo mal) y posteriormente llamar a la interrupcion 21...
2. Yo lo unico que queria es hacer un programa, con el codigo q puse arriba, para win de 32 bits, tengo q cambiar algo del code q puse? como lo compilo y linkeo con el masm32?
En vez de salirme los caracteres ascii k me salian volcando el contenido de la mem con el dump... se supone k en esas direcciones de memoria tiene k aver los caracteres ascii, no instrucciones de asm como cmp, y eso , no????
1. ok, entonces, pongo en el code por ej esto WriteFile, para llamar a la subrutina almacenada en una dll, k son las apis, y esa subrutina hace una interrupcion, no es asi? ( en ese caso me pareceria trabajar a un nivel superior...)Y k son las llamadas rapidas sysenter/syscall, son otra forma diferente a las interrupciones, o k??
2. Sabes de algun manual, o algun ejemplo de codigo, para Windows? Eske todos los mauales k encuentro en google me hablan de interrupciones y demas..
3. Perdona pero no te entendi. Mira, corrijeme si estoy ekivocado. Bueno en primer lugar me gustaria hacerte una pregunta. Cual es la diferencia entre cargar un programa en memoria y ejecutarlo?
Pues bien, a partir de esto, lo q no entiendo, es, q como si tu vuelcas el contenido de esos offsets (con el programa cargado en memoria), no te te aparecen las instrucciones ASM de tu programa, sino otros simbolos q no tienen nada q ver, es decir, no las instrucciones transformadas a hexadecimal del codigo ASM, q es lo q deberia salir.