www.wikidata.de-de.nina.az
Logische Verschiebungs Operatoren in verschiedenen Programmiersprachen Sprache Links RechtsARM Assembler lsl lsrC nur vorzeichenlose Typen lt lt gt gt C nur vorzeichenlose Typen lt lt gt gt Delphi shl shrJava lt lt gt gt Ocaml lsl lsrStandard ML lt lt gt gt Verilog lt lt gt gt VHDL sll srlJavaScript lt lt gt gt Unter einer logischen Verschiebung engl logical shift versteht man in der Informatik einen bitweisen Operator der alle Bits des Operanden verschiebt Die logische im Gegensatz zur arithmetischen Verschiebung erhalt weder das Vorzeichenbit noch unterscheidet sie zwischen dem Exponenten und der Mantisse einer Zahl Jedes Bit des Operanden wird einfach um eine gegebene Positionsanzahl verschoben und die entstehenden Bit Positionen werden in der Regel mit Nullen aufgefullt Eine logische Verschiebung wird oft genutzt wenn der Operand als Sequenz von Bits und nicht als Zahl betrachtet wird Logische Verschiebungen konnen ein sinnvoller und effizienter Weg sein Multiplikationen oder Divisionen von vorzeichenlosen Integer Zahlen Ganzzahlen zur zweiten Potenz durchzufuhren Eine Verschiebung nach links um n Bits bei einer vorzeichenlosen oder vorzeichenbehafteten binaren Zahl hat den Effekt einer Multiplikation mit 2n Verschieben nach rechts um n Bits bei einer vorzeichenlosen binaren Zahl ist gleichbedeutend mit dem Dividieren durch 2n und anschliessendem Abrunden Weil sich arithmetische Verschiebungen und logische Verschiebungen nach rechts unterscheiden haben viele Programmiersprachen verschiedene Operatoren fur sie So ist der arithmetische Shift Operator bei Java und JavaScript zum Beispiel gt gt wohingegen der logische Rechtsshift gt gt gt ist Java allein hat nur einen Linksshift Operator lt lt weil arithmetische und logische Verschiebung denselben Effekt haben Die Sprache C wieder kennt nur einen Rechtsshift Operator gt gt Viele C Compiler entscheiden die Art der Rechtsverschiebung danach welcher Integer Datentyp verschoben werden soll oft werden vorzeichenbehaftete Ganzzahlen arithmetisch verschoben und vorzeichenlose logisch Beispiel BearbeitenBeispiel nbsp Logische Verschiebung nach rechts um 1 Bit nbsp Logische Verschiebung nach links um 1 Bit Folgende Bit Sequenz soll logisch um 1 Bit verschoben werden 0001 0111 siehe Bilder nach links ergibt 0010 1110 nach rechts ergibt 0000 1011 Abgerufen von https de wikipedia org w index php title Logische Verschiebung amp oldid 204287289