IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Téléchargez Assembleur Discussion :

Interfacer du code assembleur et du C [Sources]


Sujet :

Téléchargez Assembleur

  1. #1
    Invité
    Invité(e)
    Par défaut Interfacer du code assembleur et du C
    Bonjour,

    Je vous propose un nouvel élément à utiliser : Interfacer du code assembleur et du C

    Ce code source montre comment utiliser correctement une fonction C de la bibliothèque standard GNU libc dans un code écrit en assembleur GNU.

    Important[1] : Les étapes 3-9 d'appel des sous programmes en assembleur (http://asm.developpez.com/telecharge...-en-assembleur) sont invisibles, puisque nous sommes pas responsable de l'implémentation de la fonction standard. On va juste l'utiliser !

    Important[2] : L'ordre de passage des paramètres par la pile est significatif !!!

    Notre code utilise deux fonctions : scanf et printf. Leur stack frame est organisé comme suit :
    Code texte : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    ----------------------------------------------------------------
       adresse    |    paramètre
    --------------+-------------------------------------------------
       0(%ebp)    |    l'ancien EBP
    ------------- +-------------------------------------------------
       4(%ebp)    |    adresse de retour
    --------------+-------------------------------------------------
       8(%ebp)    |    adresse de format (pformat et sformat)
    --------------+-------------------------------------------------
       12(%ebp)   |	valeur/adresse de la variable jour
    --------------+-------------------------------------------------
       16(%ebp)   |	valeur/adresse de la variable mois
    --------------+-------------------------------------------------
       20(%ebp)   |     valeur/adresse de la variable an
    ----------------------------------------------------------------
    Les valeurs de retour de scanf est printf sont passées via le registre EAX.

    Qu'en pensez-vous ?
    Dernière modification par Alcatîz ; 30/03/2013 à 10h53.

Discussions similaires

  1. [PIC18F4550][Débutant] Interfacer C et Assembleur
    Par Squall1986 dans le forum MPLAB
    Réponses: 2
    Dernier message: 28/12/2005, 09h44
  2. Editer/colorer syntaxiquement du code assembleur
    Par gnogno dans le forum Langage
    Réponses: 8
    Dernier message: 26/09/2005, 22h34
  3. Réponses: 5
    Dernier message: 21/12/2004, 18h12
  4. Outils d'analyse statique de code assembleur ?
    Par atomic dans le forum Assembleur
    Réponses: 4
    Dernier message: 11/06/2004, 11h42
  5. Peut-on faire du son juste avec du code assembleur ?
    Par Rick1602 dans le forum Assembleur
    Réponses: 7
    Dernier message: 26/03/2004, 17h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo