Logikschaltungen
Wie ändert sich der Wert, wenn eine Binärzahl um 1 Bit nach links geschoben wird? (Ohne Überlauf)
- AEr verdoppelt sich
- BEr halbiert sich
- CEr erhöht sich um 1
Antwort und Erläuterung anzeigen
Antwort: A. Er verdoppelt sich
Da jede Stelle einer Binärzahl eine doppelt so große Wertigkeit hat, verdoppelt sich der Wert beim Schieben um 1 Bit nach links mit 0 an der niedrigsten Stelle, und beim Schieben nach rechts halbiert er sich (abgerundet). Ein Schieben um n Bit entspricht dem Faktor 2ⁿ bzw. 1/2ⁿ. Da es weit kleiner und schneller als ein Multiplizierer oder Dividierer ist, ersetzt der Compiler x × 8 durch x << 3. Beim Rechtsschieben vorzeichenbehafteter Zahlen muss ein arithmetisches Schieben mit Vervielfältigung des Vorzeichenbits genutzt werden, sonst werden negative Zahlen nicht korrekt geteilt.