Unterschied zwischen Register und Akkumulator?

3 Antworten

Ein Akkumulator (es gibt Prozessoren mit mehreren) ist eine Speicherzelle des Prozessors, die darauf spezialisiert ist, die Ergebnisse von Operationen (wie Rechenoperationen, logischen Operationen, Verschiebungen) aufzunehmen.

Dafür kann ein Akkumulator normalerweise nicht als Index oder Pointer verwendet werden.

Ob ein Akkumulator als Register bezeichnet wird oder nicht, da ist sich die Literatur m. W. nicht ganz einig, wenn ich mich richtig erinnere, wird ein Akkumulator häufiger nicht als Register bezeichnet. Obwohl es technisch im Grunde dasselbe ist.

sebastianla  08.02.2017, 22:00

Was du im letzten Absatz geschrieben hast, ist mir gerade völlig neu. Einer von uns liest komische Literatur ;-)

0

Ein einfacher Rechner hat die Recheneinheit die ähnlich wie ein Trapez gezeichnet wird. Oben breit (mit Einschnitt in der Mitte) und unten dann schmäler. Oben links ist ein Register als Input das praktisch immer Daten für die Operation liefert. Rechts oben ist dann wenn notwendig ein Register mit dem Inhalt der zweiten zu verarbeitenden Bytes als Input.

Nach der Rechenoperation ist dann das Ergebnis im Akkumulator. Je nachdem war es eine Addition oder Subtraktion der beiden Inputs oder einfach ein Verschieben des linken Inputs

Der Akkumulator ist ein Register. Nicht jedes Register ist ein Akkumulator. Normalerweise gibt es von letzteren genau einen in der CPU.

uastyler 
Fragesteller
 08.02.2017, 21:19

Also ist ein Register sozusagen der Oberbegriff und der Akkumulator wird nur für spezielle Zwecke verwendet? Verstehe ich das richtig?

0
sebastianla  08.02.2017, 21:22
@uastyler

Genau.

Viele Prozessoren haben zwar mehrere Register, aber nicht alle lassen sich für alle Operationen verwenden, sie sind spezialisiert.

In diesem Fall gibt es meistens ein Register, in dem z.B. Werte aufsummiert werden können, d.h. es gibt eine ADD-Operation, wobei der Wert aus diesem Register gelesen, ein anderer Wert zu diesem addiert und das Ergebnis wieder in das Register zurückgeschrieben wird.

Dieses Register nennt man dann Akkumulator.

1
uastyler 
Fragesteller
 08.02.2017, 21:44
@sebastianla

Alles klar! Jetzt habe ichs verstanden! Vielen Dank!!! 

0
Peppie85  09.02.2017, 06:48
@sebastianla

cool, was gelernt :-) aber hatte ich es mir doch gleich gedacht. das Wort Akkumulator kommt nämlich aus dem latheinischen und heißt Speicher.

lg, Anna

0
kuku27  09.02.2017, 09:18
@Peppie85

Beinahe aber nicht ganz passend. accumulare ==> anhäufen

Es wird in jedem Rechengang einmal kurz "angehäuft", also das Rechenergebnis hineingeworfen und dann sofort irgendwo hin geschickt aber nicht gespeichert. Hält genau einen halben CPU Takt und ist dann wieder weg.

0