1. Generelle registre
Disse registre bruges til at lagre data, der behandles af CPU'en. De kan bruges til at gemme enhver type data, herunder instruktioner, data og adresser.
2. Specialregistre
Disse registre bruges til at gemme bestemte typer data. For eksempel lagrer programtællerregisteret adressen på den næste instruktion, der skal udføres, og stak-pointerregisteret gemmer adressen på toppen af stakken.
3. Flydende kommaregistre
Disse registre bruges til at gemme floating-point-numre. Flydende kommatal er tal, der kan have en brøkdel, såsom 3,14159.
4. Vektorregistre
Disse registre bruges til at lagre vektorer. Vektorer er arrays af data, såsom en liste over tal eller en liste med instruktioner.
5. Kontrolregistre
Disse registre bruges til at styre CPU'ens drift. For eksempel gemmer statusregisteret CPU'ens status, og kontrolregisteret gemmer styreindstillingerne for CPU'en.
6. Input/output registre
Disse registre bruges til at overføre data mellem CPU'en og omverdenen. For eksempel lagrer inputregisteret data, der er modtaget fra en ekstern enhed, og outputregisteret lagrer data, der skal sendes til en ekstern enhed.