« Utiliser les PIC 16F et 18F/Les structures de contrôle et l'Arithmétique en assembleur » : différence entre les versions

Contenu supprimé Contenu ajouté
m Robot : Remplacement de texte automatisé (-\n(==={0,3})(?: *)([^\n=]+)(?: *)\1(?: *)\n +\n\1 \2 \1\n)
m Robot : Remplacement de texte automatisé (-(<|</)source([ \t>]) +\1syntaxhighlight\2)
 
Ligne 174 :
| contenu
=
<sourcesyntaxhighlight lang="pic16">
btfsc STATUS,C ; tester si le bit C du registre STATUS vaut 0
bsf mavariable,2 ; non (C=0), alors bit 2 de mavariable mis à 1
xxxx ; la suite du programme est ici dans les 2 cas
</syntaxhighlight>
</source>
}}
 
Ligne 241 :
{{exemple
| contenu =
<sourcesyntaxhighlight lang="pic16">
; boucler trois fois
movlw 3 ; charger 3 dans w
Ligne 251 :
goto boucle ; si compteur pas 0, on boucle
movf mavariable , 0 ; on charge la valeur obtenue dans w
</syntaxhighlight>
</source>
}}
 
Ligne 258 :
Nous ne traiterons pas le problème dans le cas général mais donnons seulement quelques exemples
 
<sourcesyntaxhighlight lang="pic16">
; tant que C=0 on boucle
movlw 0x5 ; charger 5 dans w
Ligne 268 :
suite
movf mavariable , w ; on charge la valeur obtenue dans w
</syntaxhighlight>
</source>
 
On peut mieux faire avec un seul goto :
<sourcesyntaxhighlight lang="pic16">
; tant que C=0 on boucle
movlw 0x5 ; charger 5 dans w
Ligne 279 :
goto boucle ; non (C=0), alors aller à boucle
movf mavariable , w ; on charge la valeur obtenue dans w
</syntaxhighlight>
</source>
 
== Architecture du processeur pour les sauts ==