Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Convertir un programme en C en ASM



  1. #1
    zanzeoo

    Convertir un programme en C en ASM


    ------

    SAlut a tous , je dispose d'un programme en C pour un micro de la famille 8051 et je voudrais le convertir en ASM mais comment faire ?

    Merci

    -----

  2. Publicité
  3. #2
    fderwelt

    Re : Convertir un programme en C en ASM

    Citation Envoyé par zanzeoo
    SAlut a tous , je dispose d'un programme en C pour un micro de la famille 8051 et je voudrais le convertir en ASM mais comment faire ?

    Merci
    Bonjour,

    Il te faut un compilateur C. Et après tu peux regarder le code génére, et éventuellement le bidouiller. Mais en général, ce n'est pas très compréhensible, il faut pas mal d'habitude pour s'y retrouver.

    -- françois

  4. #3
    zanzeoo

    Re : Convertir un programme en C en ASM

    Citation Envoyé par fderwelt
    Bonjour,

    Il te faut un compilateur C. Et après tu peux regarder le code génére, et éventuellement le bidouiller. Mais en général, ce n'est pas très compréhensible, il faut pas mal d'habitude pour s'y retrouver.

    -- françois
    oui j'ai keil mais il ne genere pas d'asm en revanche j'ai un fichier hex ou alors je ne sais pas comment le configurer keil pour l'asm ....

  5. #4
    fderwelt

    Re : Convertir un programme en C en ASM

    Citation Envoyé par zanzeoo
    oui j'ai keil mais il ne genere pas d'asm en revanche j'ai un fichier hex ou alors je ne sais pas comment le configurer keil pour l'asm ....
    Le compilo Keil sait générer du source assembleur (extension .SRC), il faut lui donner la directive, je crois que c'est
    C51 PROG.C SRC(PROG.SRC)
    regarde dans la doc (éventuellement sur le site de Keil).

    -- françois

  6. #5
    zanzeoo

    Re : Convertir un programme en C en ASM

    Citation Envoyé par fderwelt
    Le compilo Keil sait générer du source assembleur (extension .SRC), il faut lui donner la directive, je crois que c'est
    C51 PROG.C SRC(PROG.SRC)
    regarde dans la doc (éventuellement sur le site de Keil).

    -- françois
    oui en fait j'ai coché "generate scr" ds les option et ça marche mais parfois j'ai un "?" dans le .asm .....

  7. A voir en vidéo sur Futura
  8. #6
    abiskhan

    Re : Convertir un programme en C en ASM

    est ce que microsoft visual c++ 6.0 genere du code assembleur svp?

  9. Publicité
  10. #7
    pitwin13

    Re : Convertir un programme en C en ASM

    Bonjour je dispose également d'un programme en C sur un pic 16f628a je souhaiterais le traduire en assembleur.
    Es-ce que quelqu'un pourrait me le traduire svp? Je suis débutant sur les pic, j'ai lu les cours de BIGONOFF pour m'aider.
    Merci d'avance.



    #define TEMPO 1000 //declaration de la constante TEMPO

    void main()
    {
    int a ;
    int b ;
    int c ;
    int d ;
    int e ;
    int f ;
    int g ;
    int h ;

    trisA = 1;
    portA = 0; //port A en entrée
    trisB =0;
    portB = 0; //port B en sortie

    a = 0;
    b = 0;
    c = 0;
    d = 0;
    e = 0;
    f = 0;
    g = 0;
    h = 0; // initialisation des variable interne

    while (1)
    {
    if ((a != portA.f0) && (portA.f0 == 1) && (a == 0))
    {
    a = portA.f0;
    portB.f0 = 1;
    delay_ms(TEMPO);
    portB.f0 = 0;
    }
    if ((portA.f0 == 0) && (a == 1))
    {
    a = portA.f0;
    }


    if ((b != portA.f1) && (portA.f1 == 1) && (b == 0))
    {
    b = portA.f1;
    portB.f1 = 1;
    delay_ms(TEMPO);
    portB.f1 = 0;
    }
    if ((portA.f1 == 0) && (b == 1))
    {
    b = portA.f1;
    }


    if ((c != portA.f2) && (portA.f2 == 1) && (c == 0))
    {
    c = portA.f2;
    portB.f2 = 1;
    delay_ms(TEMPO);
    portB.f2 = 0;
    }
    if ((portA.f2 == 0) && (c == 1))
    {
    c = portA.f2;
    }


    if ((d != portA.f3) && (portA.f3 == 1) && (d == 0))
    {
    d = portA.f3;
    portB.f3 = 1;
    delay_ms(TEMPO);
    portB.f3 = 0;
    }
    if ((portA.f3 == 0) && (d == 1))
    {
    d = portA.f3;
    }


    if ((e != portA.f4) && (portA.f4 == 1) && (e == 0))
    {
    e = portA.f4;
    portB.f4 = 1;
    delay_ms(TEMPO);
    portB.f4 = 0;
    }
    if ((portA.f4 == 0) && (e == 1))
    {
    e = portA.f4;
    }


    if ((f != portA.f5) && (portA.f5 == 1) && (f == 0))
    {
    f = portA.f5;
    portB.f5 = 1;
    delay_ms(TEMPO);
    portB.f5 = 0;
    }
    if ((portA.f5 == 0) && (f == 1))
    {
    f = portA.f5;
    }


    if ((g != portA.f6) && (portA.f6 == 1) && (g == 0))
    {
    g = portA.f6;
    portB.f6 = 1;
    delay_ms(TEMPO);
    portB.f6 = 0;
    }
    if ((portA.f6 == 0) && (g == 1))
    {
    g = portA.f6;
    }


    if ((h != portA.f7) && (portA.f7 == 1) && (h == 0))
    {
    h = portA.f7;
    portB.f7 = 1;
    delay_ms(TEMPO);
    portB.f7 = 0;
    }
    if ((portA.f7 == 0) && (g == 1))
    {
    h = portA.f7;
    }
    }
    }

Sur le même thème :

Discussions similaires

  1. convertir les fichiers « .asm » en « .hex »
    Par sg1 dans le forum Électronique
    Réponses: 16
    Dernier message: 01/10/2007, 21h02
  2. Réponses: 6
    Dernier message: 01/03/2007, 23h57
  3. Programme pour convertir du .mid (et pour les prolonger) ?
    Par shokin dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 21/04/2006, 23h10
  4. :fs: Passer du .c en .asm
    Par Bretzel dans le forum Logiciel - Software - Open Source
    Réponses: 18
    Dernier message: 08/02/2006, 22h09
  5. Log pour convertir asm en c???
    Par Reyvax dans le forum Logiciel - Software - Open Source
    Réponses: 5
    Dernier message: 24/01/2005, 13h27
Découvrez nos comparatifs produits sur l'informatique et les technologies.