Assembleur inlining in C sous Linux ??

thegen Messages postés 24 Statut Membre -  
kilian Messages postés 8854 Statut Modérateur -
Bonjour,
Je veux bien savoir comment intégrer un code assembleur dans un programme écrit en C/C++ sous Linux.
La commande asm ne marche plus, s'il y a une autre, laquelle et quelles bibliotheques dois-je intégrer ?

J'utilise UBUTU avec le compilateur Gcc.

Merci d'avance.
A voir également:

1 réponse

kilian Messages postés 8854 Statut Modérateur 1 526
 
Salut,

Pas besoin de bibliothèque pour utiliser primairement de l'assembleur en C.

Note au passage que tu peux écrire ton code dans un fichier externe avec que de l'assembleur, et la tu l'assembles avec l'assembleur de ton choix (pour de l'asm x86, je te conseille nasm) pour obtenir un fichier objet.

Après tu peux exploiter ce code avec du code C.

Sinon, tu fais de l'assembleur inline comme tu le voulais, et là la commande asm marche normalement.
Autres syntaxes:

__asm__(code);
ou
__asm__ __volatile__(code);

Avec la deuxième syntaxe, ton code sera inséré au moment où tu le voulais, en passant outre les optimisations du compilateur.

Si ça ne marche pas chez toi c'est qu'il doit y avoir une raison, donne nous au moins le message d'erreur.
0