1. Generelle registre
Disse registrene brukes til å lagre data som behandles av CPU. De kan brukes til å lagre alle typer data, inkludert instruksjoner, data og adresser.
2. Spesialregistre
Disse registrene brukes til å lagre bestemte typer data. For eksempel lagrer programtellerregisteret adressen til den neste instruksjonen som skal utføres, og stabelpekerregisteret lagrer adressen til toppen av stabelen.
3. Flytepunktregistre
Disse registrene brukes til å lagre flyttallstall. Flytende tall er tall som kan ha en brøkdel, for eksempel 3,14159.
4. Vektorregistre
Disse registrene brukes til å lagre vektorer. Vektorer er matriser med data, for eksempel en liste med tall eller en liste med instruksjoner.
5. Kontrollregistre
Disse registrene brukes til å kontrollere driften av CPU. For eksempel lagrer statusregisteret statusen til CPUen, og kontrollregisteret lagrer kontrollinnstillingene for CPUen.
6. Inn-/utgangsregistre
Disse registrene brukes til å overføre data mellom CPU og omverdenen. For eksempel lagrer inngangsregisteret data som er mottatt fra en ekstern enhet, og utgangsregisteret lagrer data som skal sendes til en ekstern enhet.