Bezeichnung
Sar -- verschiebt Bits nach rechts (V3.0)
Übersicht
result = Sar(a, x[, bignum])
Beschreibung
Dieser Befehl verschiebt den Wert a x Bits nach rechts, Bitlöcher werden mit dem höchstwertigen Bit von a aufgefüllt (Dies wird als arithmetische Verschiebung bezeichnet). a wird vor der Verschiebung in eine 32-Bit-Ganzzahlvariable umgewandelt (es sei denn, bignum ist auf True gesetzt).

Ab Hollywood 9.0 gibt es ein optionales Argument bignum. Wenn dies auf True gesetzt ist, kann Sar() mit ganzen Zahlen arbeiten, die größer als 2^31 sind. Aber denken Sie daran, dass Sar() immer noch nicht den vollen 64-Bit-Ganzzahlbereich verwenden kann, da Hollywoods numerischer Typ eine 64-Bit-Fließkommazahl und daher auf ganze Zahlen im Bereich von [-9007199254740992,9007199254740992] beschränkt ist.

Siehe auch Shl() und Shr().

Eingaben
a
Quellwert
x
Anzahl Stellen, um die der Wert geschoben werden soll
bignum
optional: ob 64-Bit-Ganzzahlen verwendet werden sollen oder nicht (Standardwert False) (V9.0)
Rückgabewerte
result
Ergebnis als Ganzzahl
Beispiel
a = Sar(-256, 3)
Dies wird -32 zurückgeben.

Navigation zeigen