Workflow-Mathematik: Ganzzahl-Funktionen
Eine Ganzzahl-Funktion arbeitet mit einem oder mehreren Bitmustern oder Binärzahlen auf der Ebene ihrer einzelnen Bits. Mithilfe einer Ganzzahl-Funktion können Sie Werte für Vergleiche und Berechnungen ändern. Ganzzahl-Funktionen können nur für Zahlen-Datentypen verwendet werden.
Wichtig
Wenn Double-/Float-Werte als Argumente angegeben werden, werden sie auf 64-Bit-Ganzzahlen gekürzt. Negative Werte werden als 64-Bit-Ganzzahlen im Zweierkomplement behandelt. Das heißt, -16 und -16,9999 werden als 0xfffffffffffff0 behandelt.
BinaryAnd
BinaryAnd(n,m): gibt einen Binärwert von (n) und (m) zurück. Das Ergebnis ist 1, wenn sowohl n als auch m 1 sind, und andernfalls 0. Wenn 0 mit „false“ gleichgesetzt ist und 1 mit „true“, dann funktioniert die BinaryAnd-Operation wie ein logisches And. Beachten Sie, dass die Ergebniswerte kein Dezimalzeichen enthalten. Das Ergebnis ist eine Ganzzahl, kein Gleitkommawert.
Beispiel
BinaryAnd(1,1)gibt 1 zurück.
BinaryAnd(1,0)gibt 0 zurück.
BinaryAnd(12,6)gibt 4 zurück.
BinaryAnd(12.99, 6.99)gibt 4 zurück.
BinaryAnd(-12, 6.99)gibt 4 zurück.
BinaryNot
BinaryNot(n): gibt ein binäres „Not“ von (n) zurück. Zahlen werden als 64-Bit-Zahlen im Zweierkomplement behandelt.
Beispiel
BinaryNot(6)gibt -7 zurück.
BinaryNot(2)gibt -3 zurück.
BinaryNot(-1)gibt 0 zurück.
BinaryNot(0)gibt -1 zurück.
BinaryOr
BinaryOr(n,m): gibt ein binäres „Or“ von (n) und (m) zurück.
Beispiel
BinaryOr(6,6)gibt 6 zurück.
BinaryOr(6,2)gibt 6 zurück.
BinaryOr(4,2)gibt 6 zurück.
BinaryOr(12,6)gibt 14 zurück.
BinaryXOr
BinaryXOr(n,m): gibt ein binäres „XOr“ von (n) und (m) zurück.
Beispiel
BinaryXOr(6,6)gibt 0 zurück.
BinaryXOr(6,2)gibt 4 zurück.
BinaryXOr(6,12)gibt 10 zurück.
ShiftLeft
ShiftLeft(n,b): verschiebt (n) (als Ganzzahl) um (b) Bits nach links.
ShiftRight
ShiftRight(n,b): verschiebt (n) (als Ganzzahl) um (b) Bits nach rechts.
Sowohl für ShiftLeft als auch für ShiftRight ergibt sich ein Int64, sodass nur 64 Bit verfügbar sind.
Beispiel
ShiftLeft(pow(2,62),1) gibt -pow(2,63) zurück. Wenn Sie es noch einmal nach links verschieben, erhalten Sie Null.
ShiftRight(1,1)gibt Null zurück.
ShiftRight(-1,1)gibt Int64_Max zurück.