SoloCodigo

Programación General => ASM (Ensamblador) => Mensaje iniciado por: cypres_snk en Viernes 3 de Diciembre de 2010, 22:54

Título: Enlazar ensamblador y C
Publicado por: cypres_snk en Viernes 3 de Diciembre de 2010, 22:54
Emmm ocupo hacer un programa en ensamblador .asm qeu me mande llamar un programa de C y compilarlos para crear un solo ejecutable
Por ejemplo un programa en C de hola mundo qeu en el programam en ensamblador mande llamar El programa hecho en C y otro qeu haga lo contrario
que un programa hecho en ensamblador lo mande llama a uno hecho en C..
El problema qeu no se como compilar ambos lenguajes para que me genere un solo exe de los dos lenguajes :S
Alguna ayuda o lugar donde pueda obeter informacion de eso????
Gracias de antemano
Título: Re: Enlazar ensamblador y C
Publicado por: m0skit0 en Sábado 4 de Diciembre de 2010, 11:06
A ver estas confusiones con los lenguajes.

Primero, el ordenador sólo entiende lenguaje máquina, nada de C, ensamblador o cualquier otra cosa.

C es compilado a ensamblador y luego ensamblado. Ensamblador es ensamblado a lenguaje máquina directamente. Por tanto si simplemente compilas C a ficheros .s tienes el código ensamblador que necesitas. Luego es cuestión de enlazar ambos ficheros con un enlazador (linker).

Saludos
Título: Re: Enlazar ensamblador y C
Publicado por: Enko en Sábado 4 de Diciembre de 2010, 23:46
Asumo que el programa compilado en C, no tienes el codigo fuente, sino usarias inline assembly alli y pondrías tus rutinas en asm.

si quieres tener los dos programas en un mismo exe, deberías tenerlos empaquetados y en runtime desenpaquetar el que quieres ejecutar y con algun llamado del sistema operativo ejecutarlo. En el caso de Windows  WinExec (puedes ver el msnd, hay info de sobra)
Título: Re: Enlazar ensamblador y C
Publicado por: cypres_snk en Domingo 5 de Diciembre de 2010, 04:15
Creo que ya vi como se hace....
Ya ahora lo qeu ocupo crear el obj del archivo .C nomas que no se como, encontre un compilador tcc.exe pero no se como compilar el archivo fuente en C, creo esto se hace desde el MS-DOS alguien me puede ayudar con esto o paarme un compilador???
Saludos
Título: Re: Enlazar ensamblador y C
Publicado por: Enko en Lunes 6 de Diciembre de 2010, 15:35
Para compilar con el tcc sería tan facil como poner Projec>>Build.

Compiladores gratuitos sobran:
http://www.thefreecountry.com/compilers/cpp.shtml (http://www.thefreecountry.com/compilers/cpp.shtml" onclick="window.open(this.href);return false;)
Título: Re: Enlazar ensamblador y C
Publicado por: m0skit0 en Lunes 6 de Diciembre de 2010, 16:17
GCC (GNU C Compiler)