Document ressource : jeu d’instructions pour PIC I Présentation Le langage assembleur permet de transformer l’algorigramme en instructions spécifiques à une famille de microcontrôleurs. Le microcontrôleur PIC 16F877 dispose d’un jeu réduit de 35 instructions. Ce jeu d’instruction réduit implique qu’une opération peut être traduite par plusieurs instructions assembleurs. La majorité des instructions s’exécutent en un seul cycle d’horloge sauf pour les instructions de branchement ou certaines autres instructions. II Jeu d’instructions Le tableau suivant résume toutes les instructions pour le PIC : Pour plus de détails sur les instructions assembleurs il faut se référer à la documentation constructeur (paragraphe 13 « Instruction Set Summary »). G BERTHOME Page 1/1 Document ressource : jeu d’instructions pour PIC III Explications des notations Lorsque l’on note les termes entre parenthèses ceci veut dire que l’on traite le contenu de l’adresse : (W) : représente le contenu du registre W, (f) : représente le contenu de l’adresse f. W : est un registre d’un octet (soit 8 bits), b7 b6 b5 b4 b3 b2 b1 b0 Ce registre permet de sauvegarder des données temporaires sur un format de 8 bits. f : est une adresse, Adresse f-1 f f+1 f+2 à 7). b7 b6 b5 b4 b3 b2 Contenu de l’adresse f-1 : noté (f-1) Contenu de l’adresse f : noté (f) Contenu de l’adresse f+1 : noté (f+1) Contenu de l’adresse f+2 : noté (f+2) b1 b0 k : est une constante d’un octet, b : représente le numéro du bit d’une adresse f (b peut donc prendre des valeurs allant de 0 f,1 : représente le bit 1 contenu dans l’adresse f d : permet de sélectionner la destination de l’opération : -d=0 : la destination est le registre W, -d=1 : la destination est l’emplacement mémoire f. Par défaut d=1. IV Le registre STATUS Lorsqu’une instruction vient d’être exécutée, le registre STATUS indique des informations sur le résultat de cette instruction. b7 IRP b6 RP1 b5 RP0 b4 /TO b3 /PD b2 Z b1 DC b0 C Ce registre permet d’indiquer : -si le résultat de l’instruction assembleur est égal à 0 : -Z=1 : le résultat est égal à 0, -Z=0 : le résultat est différent de 0. -si le résultat de l’instruction assembleur a provoqué un dépassement du bit de poids le plus fort : -C=1 : dépassement, -C=0 : pas de dépassement. G BERTHOME Page 2/2