Wikipedia · einfach zusammengefasst · Stand
Übertragsbit
Das Übertragsbit (engl. carry bit) ist ein Begriff aus der Informatik. Er bezeichnet ein Bit, welches den Übertrag einer Addition oder Subtraktion von Bits …
Inhalt4 Abschnitte
Grundidee und Funktion
Das Übertragsbit (englisch: carry bit) ist ein Bit aus der Informatik. Es speichert den Übertrag, der bei der Addition oder Subtraktion von Bits von einer Stelle auf das nächsthöhere Bit weitergegeben wird. Dadurch kann die nächsthöhere Stelle korrekt berechnet werden.
Übertragsbits werden außerdem beim Schieben und Rotieren von Registern verwendet: Ein herausgeschobenes Bit wird gespeichert, damit es beim nächsten Register wieder hineingeschoben werden kann. Das Übertragsbit kommt sowohl in Computern als auch in diskreten elektronischen Logikbauteilen vor.
Übertrag bei Addition und Subtraktion
Prozessoren bearbeiten Zahlen meist mit fester Speichergröße, zum Beispiel mit n Bit und den Stellen a₀ bis aₙ₋₁. Die Berechnung erfolgt häufig bitweise durch verkettete 1-Bit-ALUs. Entsteht bei der Bearbeitung einer Stelle aᵢ ein Ergebnis mit zwei Stellen, wird die höherwertige Stelle als Übertragsbit an die nächste, höherwertige Stelle aᵢ₊₁ weitergegeben.
Das Übertragsbit der höchstwertigen Stelle aₙ₋₁ wird oft in einem Statusregister als Übertragsmerker (englisch: Carry-Flag) gespeichert. So können Zahlen bearbeitet werden, die größer als die Bit-Breite der ALU sind. Nach demselben rekursiven Prinzip wie bei n-Bit-Zahlen aus verketteten 1-Bit-Additionen lassen sich auch m-Bit-Zahlen berechnen, wenn m ein Vielfaches von n ist.
Der Übertragsmerker bezeichnet grundsätzlich den Übertrag der Stelle aₙ₋₁. Das Überlaufbit hängt dagegen von der Interpretation der Zahlen ab und signalisiert, dass der jeweils gültige Zahlenbereich überschritten wurde.
Beispiel und Zahleninterpretation
Bei der Binärzahlen-Addition 1111 + 1111 mit 4-Bit-Registern lautet das ausgegebene Ergebnis 1110. Das höchstwertige Bit wurde abgeschnitten, weil das vollständige Ergebnis 5 Bits benötigt. Deshalb wird das Übertragsbit im Statusregister der ALU gesetzt, das Überlaufbit jedoch nicht.
Die Rechnung kann unterschiedlich interpretiert werden:
- Vorzeichenlos: 15 + 15 ergibt korrekt 11110. Das gesetzte Übertragsbit zeigt, dass das fünfte Ergebnisbit abgeschnitten wurde; das Überlaufbit ist hierbei nicht wichtig.
- Vorzeichenbehaftet im Zweierkomplement: -1 + (-1) ergibt 1110, also -2. Das Übertragsbit ist hier irrelevant. Das nicht gesetzte Überlaufbit zeigt, dass kein Überlauf aufgetreten ist und das Ergebnis korrekt ist.
Schieben, Rotieren und Abfragen
Beim Schieben oder Rotieren eines Registers werden alle Bits nach links oder rechts bewegt. Das Bit, das dabei herausfällt, wird immer im Übertragsbit gespeichert. Das am anderen Ende des Registers frei werdende Bit kann unterschiedlich gefüllt werden:
- mit einem konstanten Bit 0 oder 1,
- sodass es seinen vorherigen Wert behält,
- mit dem herausgeschobenen Bit oder
- mit dem vorherigen Inhalt des Übertragsbits.
Das Übertragsbit kann meist nur in Assemblerprogrammen abgefragt werden. Dadurch lässt sich entscheiden, ob ein bestimmter Programmabschnitt ausgeführt wird. Als Hardware-Signal kann es außerdem andere Logikbauteile steuern.