●s – bit de signe : comme le drapeau précédent, celui-ci s'applique à
l'opération d'addition, ainsi qu'à l'opération de soustraction qui est en fait
réalisée par une addition où l'opérande à soustraire est remplacé par son
complément à deux. Ce drapeau vaut un lorsque le résultat de l'opération est
négatif, en supposant que les opérandes et le résultats utilisent la
représentation en complément à deux. Attention cependant, ce drapeau doit
être valide même en cas de débordement, et il ne suffit donc pas de
seulement prendre le bit le plus significatif du résultat. L'information
concernant la manière correcte de déterminer le signe du résultat est
facilement disponible.
●z – indicateur de valeur nulle : indique que le résultat de l'opération vaut
zéro.
2.2.2 Liste des instructions de l'unité arithmétique et logique
Le tableau 1 donne un aperçu des instructions implémentées par l'unité
arithmétique et logique.
Instruction Description Code
d'opération (hex)
Drapeaux
affectés
ADD Addition 1 (01) csz
ADDI Addition avec opérande immédiat 3 (03) csz
AND Opération ET binaire 5 (05) z
FLIP Inversion de l'ordre des bits 6 (06) z
NOT Opération NON binaire 9 (09) z
OR Opération OU binaire 10 (0a) z
SLL Décalage logique vers la gauche 11 (0b) z
SRA Décalage arithmétique vers la droite 12 (0c) z
SRL Décalage logique vers la droite 13 (0d) z
SUB Soustraction 14 (0e) csz
SUBI Soustraction avec opérande immédiat 15 (0f) csz
XOR Opération OU exclusif binaire 16 (10) z
BCF, BEQ, BNE et BSF Branchements 70 (46) à 73 (49) -
CALL et RET Appel et retour de fonction 50 (32) et 51 (33) -
Tableau 1: Description des instructions
de l'unité arithmétique et logique
La dernière colonne montre les drapeaux affectés par chaque instruction. Les
drapeaux doivent conserver leur valeur actuelle lors de l'exécution d'une instruction
qui ne les affecte pas.
5