logo

Registres del microprocessador 8085

Introducció:

A microprocessador és un dispositiu electrònic multipropòsit, programable, controlat per rellotges i basat en registres que llegeix instruccions binàries d'un dispositiu d'emmagatzematge anomenat memòria, accepta dades binàries com a entrada i processa dades d'acord amb aquestes instruccions i proporciona resultats com a sortida. Un microprocessador 8085, és un microprocessador de 8 bits de segona generació i és la base per estudiar i utilitzar tots els microprocessadors disponibles al mercat.



Per què utilitzar els registres al microprocessador 8085?

Aquests són alguns dels motius pels quals s'utilitzen registres al microprocessador 8085:

  1. Emmagatzematge temporal: els registres s'utilitzen com a ubicacions d'emmagatzematge temporal de dades que cal processar pel microprocessador. Per exemple, quan es realitzen operacions aritmètiques, els operands s'emmagatzemen normalment en registres.
  2. Adreçament: els registres s'utilitzen per adreçar ubicacions de memòria al microprocessador 8085. El registre del comptador de programes (PC) fa un seguiment de la ubicació de memòria de la instrucció actual, mentre que el registre del punter de pila (SP) fa un seguiment de la part superior de la pila.
  3. Entrada/sortida: els registres s'utilitzen per comunicar-se amb dispositius d'entrada/sortida (I/O). Per exemple, el registre de l'acumulador (A) s'utilitza per comunicar-se amb el bus de dades, que està connectat als dispositius d'E/S.
  4. Informació d'estat: els registres s'utilitzen per emmagatzemar informació d'estat sobre l'estat del microprocessador. Per exemple, el registre de bandera emmagatzema informació sobre els resultats de les operacions aritmètiques i lògiques, inclòs si un resultat és negatiu, zero o acarreat.
  5. Optimització: s'utilitzen registres per optimitzar el rendiment del microprocessador. Mitjançant l'ús de registres per emmagatzemar dades i instruccions d'ús freqüent, el microprocessador pot accedir a aquesta informació més ràpidament que si l'hagués de recuperar de la memòria.

Registres al 8085:



(a) Registres d'ús general: El 8085 té sis registres de propòsit general per emmagatzemar dades de 8 bits; aquests s'identifiquen com a B, C, D, E, H i L. Es poden combinar com a parells de registres: BC, DE i HL, per realitzar alguna operació de 16 bits. Aquests registres s'utilitzen per emmagatzemar o copiar dades temporals, mitjançant instruccions, durant l'execució del programa.

(b) Registres de finalitat específica:

    Acumulador: l'acumulador és un registre de 8 bits (pot emmagatzemar dades de 8 bits) que forma part de la unitat aritmètica i lògica (ALU). Després de realitzar operacions aritmètiques o lògiques, el resultat s'emmagatzema a l'acumulador. L'acumulador també es defineix com a registre A. Registres de bandera: El registre de bandera és un registre de propòsit especial i és completament diferent dels altres registres del microprocessador. Consta de 8 bits i només 5 d'ells són útils. Els altres tres es deixen buits i s'utilitzen en les futures versions d'Intel. Aquestes 5 banderes s'estableixen o es reinicien (quan el valor de la bandera és 1, es diu que s'estableix i quan el valor és 0, es diu que es reinicia). ) després d'una operació segons la condició de dades del resultat a l'acumulador i altres registres. Els 5 registres de banderes són:
      Signar bandera: ocupa el setè bit del registre de bandera, que també es coneix com el bit més significatiu. Ajuda al programador a saber si el nombre emmagatzemat a l'acumulador és positiu o negatiu. Si s'estableix la bandera de signe, vol dir que el nombre emmagatzemat a l'acumulador és negatiu i, si es reinicia, el nombre és positiu. Bandera zero: Ocupa el sisè bit del registre de bandera. S'estableix, quan l'operació realitzada a l'ALU resulta zero (tots els 8 bits són zero), en cas contrari es reinicia. Ajuda a determinar si dos nombres són iguals o no. Bandera de transport auxiliar: ocupa el quart bit del registre de banderes. En una operació aritmètica, quan el tercer bit genera un indicador de transport i es passa al quart bit, s'estableix el senyalador de transport auxiliar. Si no, la bandera es reinicia. Aquest indicador s'utilitza internament per a operacions BCD (número decimal codificat binari). Nota - Aquest és l'únic registre de bandera a 8085 que no és accessible per l'usuari. Bandera de paritat: ocupa el segon bit del registre de bandera. Aquesta bandera prova el nombre d'1 a l'acumulador. Si l'acumulador té un nombre parell d'1, llavors aquesta bandera s'activa i es diu que és parell. D'altra banda, si el nombre d'1 és senar, llavors es reinicia i es diu que és paritat senar. Carry Flag: ocupa el bit zero del registre de bandera. Si l'operació aritmètica dóna com a resultat un carry (si el resultat és més de 8 bits), llavors s'estableix el Carry Flag; en cas contrari es reinicia.

(c) Registres de memòria - Hi ha dos registres de 16 bits utilitzats per contenir adreces de memòria. La mida d'aquests registres és de 16 bits perquè les adreces de memòria són de 16 bits. Ells són :-



    Comptador de programa: Aquest registre s'utilitza per seqüenciar l'execució de les instruccions. La funció del comptador del programa és apuntar a l'adreça de memòria de la qual s'ha d'obtenir el següent byte. Quan s'obté un byte (codi màquina), el comptador del programa s'incrementa en un per apuntar a la següent ubicació de memòria. Stack Pointer: S'utilitza com a punter de memòria. Apunta a una ubicació de memòria a la memòria de lectura/escriptura, anomenada pila. Sempre s'incrementa/disminueix en 2 durant l'operació push i pop.
      Bandera de signe (7è bit): es reinicia (0), el que significa que el nombre emmagatzemat a l'acumulador és positiu. Bandera zero (6è bit): es reinicia (0), per tant, el resultat de les operacions realitzades a l'ALU és diferent de zero. Bandera de transport auxiliar (4t bit): podem veure que b3 genera un transport que és agafat per b4, de manera que s'estableix un indicador de transport auxiliar (1). Bandera de paritat (2n bit): es reinicia (0), vol dir que la paritat és senar. L'acumulador té un nombre senar d'1. Carry Flag (0è bit): està establert (1), la sortida resulta en més de 8 bits.

Usos dels registres del microprocessador 8085:

Aquests són alguns dels usos habituals dels diferents registres del microprocessador 8085:

  1. Registre acumulador (A): el registre acumulador és el registre més utilitzat al microprocessador 8085. S'utilitza per a operacions aritmètiques i lògiques, així com per a operacions d'entrada/sortida (I/O). L'acumulador també s'utilitza com a ubicació d'emmagatzematge temporal de dades.
  2. Registre del comptador de programes (PC): el registre de l'ordinador s'utilitza per fer un seguiment de la ubicació de memòria de la instrucció actual. Quan s'executa una instrucció, el registre del PC s'incrementa automàticament per apuntar a la següent instrucció a la memòria.
  3. Registre de punter de pila (SP): el registre SP s'utilitza per fer un seguiment de la part superior de la pila. La pila s'utilitza per a l'emmagatzematge temporal de dades i adreces de retorn durant les trucades de subrutines.
  4. Registre de senyalització: el registre de bandera s'utilitza per emmagatzemar informació d'estat sobre els resultats d'operacions aritmètiques i lògiques, inclòs si un resultat és negatiu, zero o acarreat.
  5. Registres d'ús general (B, C, D, E, H i L): aquests registres s'utilitzen per a l'emmagatzematge de dades amb finalitats generals, així com per adreçar ubicacions de memòria. Es poden utilitzar en parells com a registres de 16 bits, com ara BC, DE i HL, per a un adreçament més eficient de les ubicacions de memòria.
  6. Registre d'instruccions (IR) i registre de cicle de màquina (MCR): aquests registres són utilitzats internament pel microprocessador per descodificar instruccions i controlar el temps dels cicles de la màquina.

Les característiques d'aquests registres són:

  1. Tots els registres del microprocessador 8085 són directament accessibles per la unitat aritmètica i lògica (ALU), cosa que permet un processament eficient de les dades.
  2. El registre acumulador s'utilitza com a destinació predeterminada per a la majoria de les instruccions aritmètiques i lògiques, la qual cosa simplifica la programació.
  3. Els registres de propòsit general es poden utilitzar per emmagatzemar dades durant els càlculs, però també es poden utilitzar per contenir adreces de memòria, cosa que els fa útils per accedir a ubicacions de memòria.
  4. El comptador de programes i els registres del punter de pila són crucials per gestionar el flux d'instruccions i dades dins d'un programa.
  5. El registre de bandera proporciona informació valuosa sobre els resultats de les operacions aritmètiques i lògiques, permetent una presa de decisions eficient en els programes.
  6. El registre d'instruccions emmagatzema la instrucció actual que s'està executant, permetent una descodificació eficient i la generació de senyal de control per part de la unitat de control.

Avantatges:

    Accés ràpid: els registres proporcionen una manera ràpida i eficaç d'accedir a les dades i realitzar operacions. Com que els registres es troben dins del processador, es pot accedir ràpidament sense haver d'esperar que les dades s'obtinguin de la memòria. Accés a la memòria reduït: l'ús de registres pot ajudar a reduir el nombre d'accessos de memòria necessaris, cosa que pot millorar el rendiment global del sistema. Funcionalitat especialitzada: cada registre del microprocessador 8085 té una funció específica, com ara l'acumulador per a operacions aritmètiques i el comptador de programa per emmagatzemar l'adreça de la següent instrucció. Aquesta funcionalitat especialitzada pot facilitar la programació i la depuració. Complexitat reduïda: en proporcionar registres dedicats per a finalitats específiques, el microprocessador 8085 redueix la complexitat del procés de programació i execució.

Desavantatges:

    Capacitat d'emmagatzematge limitada: el microprocessador 8085 té un nombre limitat de registres, que poden restringir la quantitat de dades que es poden emmagatzemar i manipular en un moment donat. Modes d'adreçament complexos: alguns dels modes d'adreçament utilitzats al microprocessador 8085 poden ser complexos, cosa que pot dificultar la programació. Canvi de context: en alguns casos, canviar entre diferents conjunts de registres pot afegir sobrecàrrega i complexitat al procés de programació. Manca de flexibilitat: el nombre fix i la funció de registres al microprocessador 8085 poden limitar la flexibilitat del sistema i dificultar l'adaptació als requeriments canviants.