Le microprocesseur 8085 possède cinq indicateurs dans son registre PSW (Program Status Word). Ces indicateurs sont définis ou réinitialisés en fonction des résultats d'opérations arithmétiques et logiques. Ils sont utilisés pour le branchement conditionnel et le contrôle de programme. Voici une répartition :
1. Porter le drapeau (CY) : Cet indicateur est mis à 1 si une opération arithmétique produit un report ou un emprunt du bit le plus significatif (MSB) du résultat. Il est crucial pour les opérations arithmétiques multi-octets (ajout ou soustraction de nombres supérieurs à 8 bits) et est également utilisé dans certaines opérations logiques. Par exemple:
* Ajout : Si l'ajout de deux nombres de 8 bits donne une somme supérieure à 255 (FF en hexadécimal), CY est défini.
* Soustraction : Si la soustraction d'un nombre plus grand d'un nombre plus petit entraîne un emprunt, CY est défini.
* Rotation/Décalage : Certaines instructions de rotation peuvent affecter CY en déplaçant le bit décalé hors du registre vers l'indicateur CY.
2. Drapeau de parité (P) : Ce drapeau reflète la parité du résultat d'une opération. Il est défini sur 1 si le résultat a un nombre pair de 1 (parité paire), et 0 si le résultat a un nombre impair de 1 (parité impaire). Il est principalement utilisé pour la vérification des erreurs.
3. Drapeau de transport auxiliaire (AC) : Cet indicateur est mis à 1 si une opération arithmétique produit un report du quartet inférieur (bits 3-0) vers le quartet supérieur (bits 7-4) du résultat. Il est principalement utilisé pour l’arithmétique BCD (Binary Coded Decimal). L'arithmétique BCD nécessite une gestion spéciale des reportages entre les quartets, et AC assiste dans ce processus.
4. Drapeau zéro (Z) : Cet indicateur est mis à 1 si le résultat d'une opération est nul, et à 0 sinon. C'est très utile pour le branchement conditionnel ; par exemple, vérifier si deux valeurs sont égales.
5. Signez le(s) drapeau(s) : Ce drapeau reflète le signe du résultat d'une opération. Il est défini sur 1 si le MSB du résultat est 1 (indiquant un nombre négatif dans la représentation en complément à deux), et 0 si le MSB est 0 (indiquant un nombre non négatif). Il est utilisé pour vérifier le signe d'un résultat.
En résumé : Les indicateurs 8085 fournissent des informations cruciales sur le résultat des opérations, permettant l'exécution conditionnelle et la gestion des erreurs au sein du programme. Ils sont vérifiés à l'aide d'instructions de saut conditionnel (comme `JZ`, `JNZ`, `JC`, `JNC`, etc.) pour modifier le flux du programme en fonction de l'état de ces indicateurs.
|