Mathématiques : fonctions au niveau du bit
Une fonction au niveau du bit s’applique à un ou plusieurs modèles binaires ou numériques binaires au niveau de leurs bits individuels. Utilisez une fonction au niveau du bit pour manipuler les valeurs dans le cadre de comparaisons et de calculs. Bitwise functions can only be used with Number data types and will produce an INT64 result.
Important
If double/float values are given as arguments, they are truncated to 64-bit integers. Negative values are treated as two’s complement, 64-bit integer numbers. That is, -16 and -16.9999 are treated as 0xfffffffffffffff0.
BinaryAnd
BinaryAnd(n,m)
: renvoie une valeur binaire de (n) et (m). Le résultat est 1 si n et m sont tous deux 1, sinon 0. Si 0 est assimilé à false et 1 à true, l’opération BinaryAnd fonctionne comme un AND logique. Note the absence of the decimal point on the result values. The result is an integer, not a double/float value.
Exemple
BinaryAnd(1,1)
renvoie 1.
BinaryAnd(1,0)
renvoie 0
BinaryAnd(12,6)
renvoie 4
BinaryAnd(12.99, 6.99)
renvoie 4
BinaryAnd(-12, 6.99)
renvoie 4
BinaryNot
BinaryNot(n)
: renvoie une valeur binaire NOT de (n). Numbers are treated as 64-bit, two's complement numbers.
Exemple
BinaryNot(6)
renvoie -7
BinaryNot(2)
renvoie 3.
BinaryNot(-1)
renvoie 0
BinaryNot(0)
renvoie -1.
BinaryOr
BinaryOr(n,m)
: renvoie une valeur binaire OR de (n) et (m).
Exemple
BinaryOr(6,6)
renvoie la valeur 6
BinaryOr(6,2)
renvoie la valeur 6
BinaryOr(4,2)
renvoie la valeur 6
BinaryOr(12,6)
returns 14.
BinaryXOR
BinaryXOr(n,m)
: renvoie une valeur binaire XOR de (n) et (m).
Exemple
BinaryXOr(6,6)
renvoie 0
BinaryXOr(6,2)
renvoie 4
BinaryXOr(6,12)
renvoie 10.
ShiftLeft
ShiftLeft(n,b)
: décale (n) (un entier) à gauche de (b) bits.
ShiftRight
ShiftRight(n,b)
: décale (n) (un entier) à droite de (b) bits.
For both ShiftLeft and ShiftRight the result is an Int64, so only 64 bits are available.
Exemple
ShiftLeft(pow(2,62),1)
returns
-pow(2,63)
. Shift it left once more and you get zero.
ShiftRight(1,1)
returns zero.
ShiftRight(-1,1)
returns
Int64_Max
.