logo

Registres du microprocesseur 8085

Introduction :

UN microprocesseur est un appareil électronique polyvalent, programmable, piloté par une horloge et basé sur un registre qui lit les instructions binaires à partir d'un périphérique de stockage appelé mémoire, accepte les données binaires en entrée et traite les données conformément à ces instructions et fournit des résultats en sortie. Un microprocesseur 8085, est un microprocesseur 8 bits de deuxième génération et constitue la base pour étudier et utiliser tous les microprocesseurs disponibles sur le marché.



images de démarques

Pourquoi utiliser les registres dans le microprocesseur 8085 ?

Voici quelques raisons pour lesquelles les registres sont utilisés dans le microprocesseur 8085 :

  1. Stockage temporaire : les registres sont utilisés comme emplacements de stockage temporaire pour les données qui doivent être traitées par le microprocesseur. Par exemple, lors d'opérations arithmétiques, les opérandes sont généralement stockés dans des registres.
  2. Adressage : les registres sont utilisés pour adresser les emplacements mémoire du microprocesseur 8085. Le registre du compteur de programme (PC) garde une trace de l'emplacement mémoire de l'instruction en cours, tandis que le registre du pointeur de pile (SP) garde une trace du haut de la pile.
  3. Entrée/Sortie : les registres sont utilisés pour communiquer avec les périphériques d'entrée/sortie (E/S). Par exemple, le registre accumulateur (A) est utilisé pour communiquer avec le bus de données, qui est connecté aux périphériques d'E/S.
  4. Informations d'état : les registres sont utilisés pour stocker des informations d'état sur l'état du microprocesseur. Par exemple, le registre d'indicateurs stocke des informations sur les résultats d'opérations arithmétiques et logiques, notamment si un résultat est négatif, nul ou reporté.
  5. Optimisation : les registres sont utilisés pour optimiser les performances du microprocesseur. En utilisant des registres pour stocker les données et instructions fréquemment utilisées, le microprocesseur peut accéder à ces informations plus rapidement que s'il devait les récupérer de la mémoire.

Inscrits au 8085 :



(a) Registres à usage général – Le 8085 dispose de six registres à usage général pour stocker des données 8 bits ; ceux-ci sont identifiés comme B, C, D, E, H et L. Ceux-ci peuvent être combinés sous forme de paires de registres – BC, DE et HL, pour effectuer une opération sur 16 bits. Ces registres sont utilisés pour stocker ou copier des données temporaires, à l'aide d'instructions, lors de l'exécution du programme.

(b) Registres à usage spécifique –

    Accumulateur : L'accumulateur est un registre de 8 bits (peut stocker des données de 8 bits) qui fait partie de l'unité arithmétique et logique (ALU). Après avoir effectué des opérations arithmétiques ou logiques, le résultat est stocké dans un accumulateur. L'accumulateur est également défini comme le registre A. Registres d'indicateur : Le registre des drapeaux est un registre à usage spécial et il est complètement différent des autres registres du microprocesseur. Il se compose de 8 bits et seuls 5 d’entre eux sont utiles. Les trois autres sont laissés vacants et sont utilisés dans les futures versions d'Intel. Ces 5 indicateurs sont définis ou réinitialisés (lorsque la valeur de l'indicateur est 1, alors il est dit défini et lorsque la valeur est 0, alors il est dit réinitialisé). ) après une opération selon l'état des données du résultat dans l'accumulateur et d'autres registres. Les 5 registres de drapeaux sont :
      Drapeau de signe : il occupe le septième bit du registre des drapeaux, également appelé bit le plus significatif. Cela aide le programmeur à savoir si le nombre stocké dans l'accumulateur est positif ou négatif. Si l'indicateur de signe est activé, cela signifie que le nombre stocké dans l'accumulateur est négatif, et s'il est réinitialisé, alors le nombre est positif. Zero Flag : : Il occupe le sixième bit du registre des drapeaux. Il est défini lorsque l'opération effectuée dans l'ALU aboutit à zéro (les 8 bits sont tous nuls), sinon il est réinitialisé. Cela aide à déterminer si deux nombres sont égaux ou non. Drapeau de transport auxiliaire : il occupe le quatrième bit du registre de drapeau. Dans une opération arithmétique, lorsqu'un indicateur de report est généré par le troisième bit et transmis au quatrième bit, alors l'indicateur de report auxiliaire est activé. Dans le cas contraire, le drapeau est réinitialisé. Cet indicateur est utilisé en interne pour les opérations BCD (Binary-Coded decimal Number). Note - Il s'agit du seul registre de drapeaux du 8085 qui n'est pas accessible à l'utilisateur. Drapeau de parité : il occupe le deuxième bit du registre des drapeaux. Cet indicateur teste le nombre de 1 dans l’accumulateur. Si l’accumulateur contient un nombre pair de 1, alors cet indicateur est activé et on dit qu’il a une parité paire. En revanche si le nombre de 1 est impair, alors il est réinitialisé et on parle de parité impaire. Carry Flag : Il occupe le bit zéro du registre des drapeaux. Si l'opération arithmétique aboutit à un report (si le résultat est supérieur à 8 bits), alors Carry Flag est défini ; sinon il est réinitialisé.

(c) Registres de mémoire – Il existe deux registres de 16 bits utilisés pour contenir les adresses mémoire. La taille de ces registres est de 16 bits car les adresses mémoire sont de 16 bits. Ils sont :-



    Compteur de programme : ce registre est utilisé pour séquencer l’exécution des instructions. La fonction du compteur de programme est de pointer vers l'adresse mémoire à partir de laquelle l'octet suivant doit être récupéré. Lorsqu'un octet (code machine) est récupéré, le compteur du programme est incrémenté de un pour pointer vers l'emplacement mémoire suivant. Pointeur de pile : il est utilisé comme pointeur de mémoire. Il pointe vers un emplacement mémoire dans la mémoire de lecture/écriture, appelé pile. Il est toujours incrémenté/décrémenté de 2 lors des opérations push et pop.
      Indicateur de signe (7ème bit) : il est réinitialisé (0), ce qui signifie que le nombre stocké dans l'accumulateur est positif. Indicateur zéro (6ème bit) : Il est réinitialisé (0), donc le résultat des opérations effectuées dans l'ALU est différent de zéro. Indicateur de report auxiliaire (4ème bit) : nous pouvons voir que b3 génère un report qui est pris par b4, donc l'indicateur de report auxiliaire est défini (1). Drapeau de parité (2ème bit) : Il est réinitialisé (0), cela signifie que la parité est impaire. L’accumulateur contient un nombre impair de 1. Carry Flag (0ème bit) : il est défini (1), la sortie donne plus de 8 bits.

Utilisations des registres du microprocesseur 8085 :

vlc télécharger des vidéos depuis youtube

Voici quelques utilisations courantes des différents registres du microprocesseur 8085 :

  1. Registre accumulateur (A) : Le registre accumulateur est le registre le plus couramment utilisé dans le microprocesseur 8085. Il est utilisé pour les opérations arithmétiques et logiques, ainsi que pour les opérations d'entrée/sortie (E/S). L'accumulateur est également utilisé comme emplacement de stockage temporaire des données.
  2. Registre du compteur de programme (PC) : le registre PC est utilisé pour garder une trace de l'emplacement mémoire de l'instruction en cours. Lorsqu'une instruction est exécutée, le registre PC est automatiquement incrémenté pour pointer vers l'instruction suivante en mémoire.
  3. Registre Stack Pointer (SP) : le registre SP est utilisé pour garder une trace du haut de la pile. La pile est utilisée pour le stockage temporaire des données et des adresses de retour lors des appels de sous-programmes.
  4. Registre des indicateurs : le registre des indicateurs est utilisé pour stocker des informations d'état sur les résultats des opérations arithmétiques et logiques, notamment si un résultat est négatif, nul ou reporté.
  5. Registres à usage général (B, C, D, E, H et L) : ces registres sont utilisés pour le stockage de données à usage général, ainsi que pour l'adressage des emplacements mémoire. Ils peuvent être utilisés par paires en tant que registres 16 bits, tels que BC, DE et HL, pour un adressage plus efficace des emplacements mémoire.
  6. Registre d'instructions (IR) et registre de cycles machine (MCR) : ces registres sont utilisés en interne par le microprocesseur pour décoder les instructions et contrôler le timing des cycles machine.

Les caractéristiques de ces registres sont les suivantes :

  1. Tous les registres du microprocesseur 8085 sont directement accessibles par l'unité arithmétique et logique (ALU), permettant un traitement efficace des données.
  2. Le registre accumulateur est utilisé comme destination par défaut pour la plupart des instructions arithmétiques et logiques, ce qui simplifie la programmation.
  3. Les registres à usage général peuvent être utilisés pour stocker des données pendant les calculs, mais ils peuvent également être utilisés pour conserver des adresses mémoire, ce qui les rend utiles pour accéder aux emplacements mémoire.
  4. Les registres du compteur de programme et du pointeur de pile sont cruciaux pour gérer le flux d’instructions et de données au sein d’un programme.
  5. Le registre des drapeaux fournit des informations précieuses sur les résultats des opérations arithmétiques et logiques, permettant une prise de décision efficace dans les programmes.
  6. Le registre d'instructions stocke l'instruction en cours d'exécution, permettant un décodage efficace et une génération de signal de contrôle par l'unité de contrôle.

Avantages :

    Accès rapide : les registres offrent un moyen rapide et efficace d’accéder aux données et d’effectuer des opérations. Étant donné que les registres sont situés à l’intérieur du processeur, ils sont accessibles rapidement sans avoir à attendre que les données soient extraites de la mémoire. Accès mémoire réduit : l'utilisation de registres peut contribuer à réduire le nombre d'accès à la mémoire requis, ce qui peut améliorer les performances globales du système. Fonctionnalité spécialisée : Chaque registre du microprocesseur 8085 a une fonction spécifique, comme l'accumulateur pour les opérations arithmétiques et le compteur de programme pour stocker l'adresse de l'instruction suivante. Cette fonctionnalité spécialisée peut faciliter la programmation et le débogage. Complexité réduite : en fournissant des registres dédiés à des fins spécifiques, le microprocesseur 8085 réduit la complexité du processus de programmation et d'exécution.

Désavantages:

    Capacité de stockage limitée : le microprocesseur 8085 dispose d'un nombre limité de registres, ce qui peut limiter la quantité de données pouvant être stockées et manipulées à un moment donné. Modes d'adressage complexes : certains des modes d'adressage utilisés dans le microprocesseur 8085 peuvent être complexes, ce qui peut rendre la programmation plus difficile. Changement de contexte : dans certains cas, le basculement entre différents ensembles de registres peut ajouter une surcharge et une complexité au processus de programmation. Manque de flexibilité : Le nombre fixe et la fonction des registres du microprocesseur 8085 peuvent limiter la flexibilité du système et rendre plus difficile son adaptation aux exigences changeantes.