Ensamblador - Una duda sobre mezclar ensamblador con C

 
Vista:

Una duda sobre mezclar ensamblador con C

Publicado por JoNeF (1 intervención) el 26/12/2002 12:14:22
Pues mi duda consiste en que quiero llamar a una funcion en C desde una rutina en ensamblador.
El prototipo de la funcion es
void imp_refres(int refresco)

Entonces dentro del fichero en ensamblador guardo un cierto dato en la variable TIEMPO, y lo que quiero es llamar a la funcion en C pasandole como argumento dicha variable. Pues esto es lo que no me sale, yo creia que con poner
PUSH TIEMPO
CALL _imp_refres
bastaba, pero parece ser k no, asik a ver si me podeis echar una manilla, ya k mis profesores no nos han contado nada de esto.
Gracias a to2 y feliz Navidad.
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:Una duda sobre mezclar ensamblador con C

Publicado por Googol (61 intervenciones) el 26/12/2002 18:38:33
En teoría sí es así. ¿Qué error te sale? ¿La función es de C y se está compilando como de C o como de C++? ¿Estás luego enlazando con el .obj generado por el compilador de C?
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:Una duda sobre mezclar ensamblador con C

Publicado por n0str0m0 (3 intervenciones) el 03/01/2003 18:02:15
Vale, yo he tenido problemas parecidos al intentar llamar a scanf y printf desde ensamblador.
Primero tuve que llamar a los segmentos de una forma específica para que el compilador de Borland lo entendiera. Te recomiendo el manual de C y ensamblador que hay en www.drpaulcarter.com.
Dependiendo del compilador de C (Borland, Visual C, DJGPP...) así tendrás que llamar a los segmentos en tu código en ensamblador y el objeto que crees a partir del ensamblador también variará (coff para DJGPP obj para Borland...)
Con ese manual conseguí llamar a printf y scanf
Ciao y Feliz Año a todos !!!!
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