Langage assembleur, rassurez moi !
Répondre à la discussion
Affichage des résultats 1 à 9 sur 9

Langage assembleur, rassurez moi !



  1. #1
    Laboum

    Langage assembleur, rassurez moi !


    ------

    Bonsoir à tous,
    Je suis en train d'essayer de décrypter quelques lignes de code, commentée partiellement.
    Mon raisonnement tient-il la route ?
    Auteur: Raphael Bourdon
    Code:
     	"etat" est un registre déclaré, dont on utilise chaque bit pour flag
    ;------------------------------------------------------------------------------------	
    	movf	temp2,1        ; copie registre "temp2", dans f car d, "opérande" 1
    	btfss	STATUS,Z       ; test Z si à 1 donc "temp2"= 0, on saute la ligne qui suit
    	bsf	etat,2		; on met à 1, bit2 de "etat"
    	movf	temp3,1		; copie du registre "temp3" dans f car d, "opérande" 1
    	btfsc	STATUS,Z 	; le registre "temp3" est-il à 0 ? OUI, donc Z = 1
     				; NON, donc Z = 0 et là, on saute la ligne qui suit
    Merci de bien vouloir me corriger, si je fait fausse route

    -----

  2. #2
    DAUDET78

    Re : Langage assembleur, rassurez moi !

    L'assembleur est spécifique d'un µC .... il vaut mieux donner la cible !
    J'aime pas le Grec

  3. #3
    Laboum

    Re : Langage assembleur, rassurez moi !

    Bonsoir DAUDET78,
    Désolé pour cet oublie, c'est pour un PIC 16F84.
    Merci

  4. #4
    gedonet

    Re : Langage assembleur, rassurez moi !

    Bonjour
    Oui ton raisonnement est bon. Dans la ligne:
    Code:
    	movf	temp2,1        ; copie registre "temp2", dans f car d, "opérande" 1
    Il faut comprendre déplacer le contenu de temp2 dans temp2, cela permet de verifier si le contenu est egale à 0 ou non en lisant le bit z de STATUS et cela sans modifier la valeur de temp2 ou sans passer par w.
    Gilles

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

    Re : Langage assembleur, rassurez moi !

    Bonjour gedonet,
    Voila, pour moi c'est devenu un peu plus clair.
    Merci pour ton explication.

  7. #6
    Gérard

    Re : Langage assembleur, rassurez moi !

    Bigonoff a écrit des cours sur les PIC.
    Le cours n°1 est justement consacré au 16F84.
    http://www.abcelectronique.com/bigonoff/

  8. #7
    DavidDB

    Re : Langage assembleur, rassurez moi !

    Salut,

    je modifie, fausse manip...

  9. #8
    DavidDB

    Re : Langage assembleur, rassurez moi !

    Re,
    Code:
    movf	temp2,1        ; copie registre "temp2", dans f car d, "opérande" 1
    Ton commentaire n'est pas explicite, il décrit l'instruction...

    Cela signifie que dans une semaine, il est probable que tu ne saches plus exactement ce que tu voulais faire dans ton programme...

    Ce genre de commentaire est déjà légèrement mieux :
    Code:
    movf	temp2,1        ; Positionner les bits de status
    	btfss	STATUS,Z       ; ce que je test vaut 0 ?
    	bsf	etat,2		; non, donc je l’indique.
    Attention avec ce genre de test, car « etat » n’est positionné qu’à la condition unique que Z=0

    Perso, je complèterais le test de manière à toujours positionner le bit « etat » :
    Code:
    movf	temp2,1        ; Positionner les bits de status
    	btfss	STATUS,Z       ; ce que je test vaut 0 ?
    	bsf	etat,2		; non, donc je l’indique.
    	btfsc	STATUS,Z       ; ce que je test est différent de 0 ?
    	bcf	etat,2		; non, donc je l’indique
    Evidemment, adapter les commentaires au contexte réel, car tels quels, on ne sait pas à quoi correspond « temp2 » et « etat,2 »

    David.

  10. #9
    Laboum

    Re : Langage assembleur, rassurez moi !

    Bonjour à tous,
    Tous vos conseils me sont profitables !
    Citation Envoyé par Gérard Voir le message
    Bigonoff a écrit des cours sur les PIC.
    Je connais c'est ma bible !, par contre je ne comprend pas forcement tout, même si c'est un très bon pédagogue, tout le monde n'appréhende pas les choses de la même manière.C'est pourquoi je déniche ça et là, d'autres aides qui me parlent différemment.
    Citation Envoyé par DavidDB Voir le message
    Ton commentaire n'est pas explicite, il décrit l'instruction
    Tout a fait d'accord avec toi, il faut en connaître l'environnement.
    il est probable que tu ne saches plus exactement ce que tu voulais faire dans ton programme...
    Précisément c'est ce que je redoute, c'est pour cela que je poste ! pour savoir si mes commentaires sont corrects.
    Je sais que cela peut être obscure pour toi, j'ai épluché le contexte de l'utilisation de cette variable "etat", mais je continue d'apprendre grâce à vous tous.
    Je prend bonne note de la manière, dont tu conçois ma démarche.
    Merci à tous

Discussions similaires

  1. rassurez-moi là....
    Par invite43be92d9 dans le forum Matériel astronomique et photos d'amateurs
    Réponses: 12
    Dernier message: 07/09/2009, 18h15
  2. Hellllp, rassurez moi :/
    Par invite08260ebe dans le forum MST : SIDA, syphilis, hépatite...
    Réponses: 4
    Dernier message: 04/04/2009, 15h13
  3. Rassurez moi les amis !
    Par VLe dans le forum Matériel astronomique et photos d'amateurs
    Réponses: 20
    Dernier message: 07/12/2008, 06h56
  4. Rassurez moi, anglais fac de maths.
    Par invite423aa977 dans le forum Orientation après le BAC
    Réponses: 7
    Dernier message: 09/10/2005, 22h26
  5. adobe première...rassurez moi
    Par influenza dans le forum Logiciel - Software - Open Source
    Réponses: 9
    Dernier message: 24/01/2005, 23h05
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...