Question

Comment inclure des lignes de code d'assemblage dans mon programme C?

Dans turbo c, existe-t-il une possibilité d’ajouter un fichier de code d’assemblage (.asm) à un projet de quelques fichiers .c?

Était-ce utile?

La solution

Une façon d'inclure le code d'assembly consiste à ajouter une fonction wrapper et à écrire le code d'assembly dans le bloc asm, comme indiqué dans l'exemple ci-dessous:

void wrapper_function()
{
    asm
    {
        /* your assembly code */
    }
}

Autres conseils

Vous pouvez utiliser votre makefile pour définir des actions pour différents types de cibles. Pour les types C (par exemple, foo.c), le compilateur C est appelé. Pour les fichiers ASM, appelez l'assembleur. La sortie de l’un ou de l’autre devrait être un fichier objet (par exemple, .o) qui peut tous être compilé ensemble par l’éditeur de liens.

Si vous avez un peu d’assemblage, lancez-vous en ligne. Sinon, je recommande des modules séparés et une décomposition fonctionnelle comme meilleur moyen de tout gérer. Surtout si vous devez prendre en charge différentes cibles (par exemple, le développement multi-plateformes).

Vous pouvez également créer un lien dans les fichiers d'objet. Mais l’assembleur en ligne est beaucoup plus facile à gérer.

void func()
{
asm://assembly statements...
asm://assembly statements...
...
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top