Beim Rechnen im Kopf merkst du dir kleine Zwischenergebnisse, statt jedes Mal wieder von vorn zu beginnen. Auch ein Prozessor muss Zahlen, Befehle und Speicherorte kurz bereithalten. Dafür hat er winzige, besonders schnelle Speicherplätze.
Register sind der Notizzettel des Prozessors
Ein Prozessor ist der Teil des Computers, der Befehle ausführt und Daten verarbeitet. Er braucht dabei oft Werte nur für einen kurzen Moment, etwa zwei Zahlen vor einer Addition.
Ein Register ist ein sehr kleiner Speicherplatz direkt im Prozessor. Darin liegen vorübergehend Daten, Befehle oder Speicheradressen. Weil das Register direkt zum Prozessor gehört, kann dieser sehr schnell darauf zugreifen.
Ein Programm soll \(7 + 5\) berechnen. Der Prozessor legt 7 und 5 zunächst in Register. Dann rechnet er damit und speichert 12 wieder kurz in einem Register.
Register sind nicht für viele Dateien gedacht. Sie halten wenige, gerade benötigte Informationen besonders schnell bereit.
Interaktive Quizfrage wird geladen ...
Register und Arbeitsspeicher vergleichen
Der Arbeitsspeicher ist ein größerer Speicher im Computer. Er hält Programme und Daten bereit, solange der Computer arbeitet. Ein Register ist viel kleiner als der Arbeitsspeicher, aber näher am Rechenwerk des Prozessors.
Zwischen Register und Arbeitsspeicher liegt oft noch der Cache. Das ist ein kleiner, schneller Zwischenspeicher. Für dich genügt diese Reihenfolge: Register sind am schnellsten, dann folgt Cache, danach der Arbeitsspeicher.
Stell dir vor, du löst Aufgaben am Schreibtisch. Die Zahl, mit der du gerade rechnest, steht auf deinem Blatt direkt vor dir: Das ähnelt einem Register. Ein Buch im Regal im Klassenzimmer ähnelt eher dem Arbeitsspeicher: Es bietet viel Platz, aber du musst erst danach greifen.
Schneller Speicher ist technisch aufwendig und braucht Platz im Prozessor. Deshalb gibt es nur wenige Register, aber sehr viel mehr Arbeitsspeicher.
Interaktiver Lückentext wird geladen ...
Mit Registern rechnen
Die arithmetisch-logische Einheit ist der Teil des Prozessors, der rechnet und logische Vergleiche ausführt. Sie wird oft kurz ALU genannt. Sie verarbeitet meist Werte aus Registern und legt Ergebnisse wieder in Registern ab.
Ein Datenregister ist ein Register für Werte, mit denen gerade gerechnet oder verglichen wird. Es kann zum Beispiel eine Zahl oder ein Zwischenergebnis enthalten.
Ein vereinfachter Ablauf für \(18 - 6\):
- Ein Datenregister enthält 18.
- Ein zweites Datenregister enthält 6.
- Die arithmetisch-logische Einheit zieht 6 von 18 ab.
- Ein Register erhält das Ergebnis 12.
Die ALU rechnet. Register liefern ihr meist die Werte und nehmen Ergebnisse wieder auf.
Interaktive Quizfrage wird geladen ...
Adressen und der nächste Befehl
Eine Speicheradresse ist die Nummer eines Speicherplatzes. Sie funktioniert ähnlich wie eine Hausnummer: Sie zeigt, wo eine Information zu finden ist.
Ein Adressregister speichert eine solche Speicheradresse. Der Prozessor kann damit festlegen, aus welchem Bereich des Arbeitsspeichers er Daten lesen oder wohin er Daten schreiben soll.
Ein Befehl ist eine einzelne Anweisung an den Prozessor, zum Beispiel „addiere zwei Werte“. Der Programmzähler ist ein spezielles Register. Er enthält oft die Adresse des nächsten Befehls eines Programms.
Ein Programm besteht vereinfacht aus Befehlen an den Adressen 100, 104 und 108. Zeigt der Programmzähler auf 104, holt der Prozessor als Nächstes den Befehl an dieser Adresse. Danach wird der Programmzähler auf den folgenden Befehl gesetzt.
Bei einem Sprung im Programm, etwa in einer Wiederholung oder einer Wenn-Dann-Entscheidung, bekommt der Programmzähler eine andere Adresse. So geht es an der passenden Stelle weiter.
Interaktiver Lückentext wird geladen ...
Weitere wichtige Register
Nicht jedes Register speichert einfach nur Zahlen. Manche haben eine feste Aufgabe.
Ein Befehlsregister hält den Befehl, den der Prozessor gerade bearbeitet. Ein Statusregister speichert kleine Zustandsinformationen. Solche Informationen heißen Flags. Ein Flag kann zum Beispiel anzeigen, dass ein Rechenergebnis null ist.
Ein Stapel ist ein Bereich im Speicher für vorübergehende Informationen. Dort können Programme zum Beispiel Rücksprungstellen ablegen. Der Stapelzeiger ist ein spezielles Register, das auf den aktuellen Platz dieses Stapels zeigt.
Bei einer Rechnung kann das Statusregister festhalten: Das Ergebnis ist 0. Ein späterer Befehl kann diese Information nutzen und entscheiden, ob das Programm einen anderen Weg nehmen soll.
Interaktive Lernkarten wird geladen ...
Interaktive Quizfrage wird geladen ...
Zusammenfassung
Ein Register ist ein winziger und sehr schneller Speicherplatz im Prozessor. Es hält Informationen nur so lange bereit, wie der Prozessor sie gerade braucht.
Datenregister helfen beim Rechnen. Adressregister zeigen auf Speicherplätze. Der Programmzähler enthält oft die Adresse des nächsten Befehls, und Statusregister halten Ergebnisse als Flags fest. So kann der Prozessor viele kleine Schritte schnell und geordnet ausführen.
Mit Google fortfahren