>> Technologie Électronique >  >> Audio pour la maison >> Amplificateurs et préamplis

Qu'est-ce qu'un registre dans un microcontrôleur ? Stockage CPU rapide et dédié

Un registre est une minuscule zone de stockage (typiquement 8–64 bits) à l'intérieur du CPU, accessible en un seul cycle d'horloge. Contrairement à la RAM, les registres n'ont pas de latence de bus d'adresse et sont câblés directement à l'ALU.

Classes de registres courantes

ClasseExemples (ARM Cortex-M / AVR / 8051)Usage
Accumulateur / GénéralR0–R15 (ARM), R0–R31 (AVR), A (8051)Opérandes & résultats arithmétiques/logiques.
Pointeur de programme (PC)R15 (ARM), PC (AVR/8051)Adresse de la prochaine instruction à charger.
Pointeur de pile (SP)R13 (ARM), SP (AVR/8051)Sommet de la pile d'appels.
État / DrapeauxxPSR (ARM), SREG (AVR), PSW (8051)Z, N, C, V, activations interruptions.
Index / PointeurX/Y/Z (AVR), DPTR (8051)Modes d'adressage mémoire.
Fonction spéciale (SFR)Contrôle périphériques (GPIO, UART, ADC)Mappés mémoire, mais cycle unique sur certains cœurs.

Pourquoi le nombre de registres compte

  • Plus de registres → moins de déversement/remplissage pile → ISRs & boucles serrées plus rapides.
  • ARM Cortex-M : 16 (R0–R15) ; RISC-V : 32 (x0–x31) ; AVR : 32 (R0–R31).
  • L'allocation de registres par le compilateur est une passe d'optimisation clé.

Datasheet → chapitre « Modèle programmeur » liste chaque registre pour votre MCU spécifique.

Amplificateurs et préamplis