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

Compilateur



  1. #1
    Bissmark

    Compilateur


    ------

    Bonjour,
    Je debute dans le domaine. Et je dois avouer que je suis un peu perdu à l'issue du TD de ce jour. Est-ce qu'une âme charitable pourrai m'explique le code suivant:
    LOADA EQU 0xFFD0
    TAB EQU 0xFFA0
    RES EQU 0xFFB0
    NB_D EQU 4
    LDW R6,#1))
    LDW R1,#NB_D
    LDW R0,#0
    LDW R4,#0xFFA0
    LOOP LDW R3,(R4)+
    ADD R3,R0,R3
    SUB R1,R6,R1))
    BGT LOOP
    STW R0,@RES

    Merci d'avance,

    -----

  2. Publicité
  3. #2
    whoami

    Re : Compilateur

    Bonjour,

    Je suppose que le TD consiste justement à faire ce que tu nous demandes ?

  4. #3
    Bissmark

    Re : Compilateur

    Nullement, c'est le code que nous avons généré au cours la seance. Je dois avouer que je suis un perdu. J'ai compris le principe genral; qui consiste à faire une boucle eu vue d'additionner 4 valeurs (D1 à D4) et de les stocker dans RES. Je comprend donc le principe generale mais pas le code en detail. Le ayant été generé par le professeur en vu de le compiler avec emacs et de l'utiliser dans un compilateur virtuel.
    Pourriez vous m'expliquer les étapes du code?

  5. #4
    whoami

    Re : Compilateur

    Bonjour,

    Alors, tu veux nous faire croire que tu as généré ce code, et que malgré tout, tu ignores ce qu'il fait ?

  6. A voir en vidéo sur Futura
  7. #5
    Bissmark

    Re : Compilateur

    Exactement. Je sais qu'il permet de stocker D1 dans RES,RES+D2 qu'il sock dans RES, RES+D3 qu'il stock dans RES, RES+D4 qu'il stock dans RES. Je n'arrive pas à distinguer la fonction des différentes lignes. Le prof nous écrit le programme précédemment cité au tableau nous expliquant comme je viens de l'écrire sa fonction. J'ai juste envie de comprendre le fondement des chose. Je ne triche pas, je veux juste savoir. Si je m'adresse sur ce forum c'est que j n'ai pas réussi à trouver la réponse ailleurs, ni par mes camarades de classe qui sont tout autant perdu que moi, le prof allant assez vite pensant que c'est facile. J'aimerai juste que quelqu'un m'explique pour que je comprenne?

  8. #6
    Jack
    Modérateur

    Re : Compilateur

    La moindre des choses aurait été de préciser de quel µprocesseur il s'agit.

    Enfin bon, à vue de nez, TAB marque le début d'une table de données, RES va stocker le résultat, NB_D contient le nombre de données.

    Les LDW xxx permettent d'initialiser les registres internes avec ces données

    LDW R4,#0xFFA0 : vu les déclaration, j'aurais plutôt mis LDW R4,#TAB .
    LOOP LDW R3,(R4)+ : début de la boucle, on charge R3 avec R4 qui pointe dans la table + post incrémentation pour pointer la donnée suivante
    ADD R3,R0,R3 :tiens, une syntaxe à 3 opérateurs. Je ne connaissais pas. On dirait que l'opération est R3 + R0 -> R3, mais vu la suite le résultat devrait plutôt affecter R0
    SUB R1,R6,R1)) : bizarre ces 2 parenthèses! Enfin, même principe que précédemment R1 - R6 -> R1 , bref une bête décrémentation de R1
    BGT LOOP : et tant que R1 > 0 on reboucle, BGT correspondant normalement à branch if greater
    STW R0,@RES : on stocke R0, donc en principe le résultat final à l'adresse du résultat.

    J'ai fait ce que j'ai pu, vu que la démarche normale, et que tu aurais dû avoir, est de rechercher la doc du jeu d'instruction et d'adressage du composant.

    A+

  9. Publicité
  10. #7
    Bissmark

    Re : Compilateur

    Merci beaucoup pour cette réponse qui me semble tres complete. Je m'empresse de l'étudier et reviens vers vous si j'ai des questions. En fait on utilise pas de processeur, mais un simulateur de nom microPIUP. je crois qu'il appelle ca language d'assemblage pour la machine RISC.
    Merci encore de ces reponses.

  11. #8
    Jack
    Modérateur

    Re : Compilateur

    je crois qu'il appelle ca language d'assemblage pour la machine RISC
    Laquelle? Des processeurs RISC, il y en a à la pelle aujourd'hui.

    A+
    Dernière modification par Jack ; 16/12/2011 à 07h13. Motif: orthographe (hé oui, certains s'en soucient encore)

Discussions similaires

  1. Compilateur C Mikro C
    Par f5ejz dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 12/01/2011, 15h23
  2. Compilateur
    Par maedupuis dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 17/09/2007, 12h54
  3. compilateur de c
    Par Manager dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 01/10/2005, 01h56
  4. Compilateur
    Par Fufu dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 01/06/2004, 16h23
  5. Compilateur C
    Par Cyrius dans le forum Logiciel - Software - Open Source
    Réponses: 3
    Dernier message: 24/11/2003, 20h08