Funzioni matematiche del flusso di lavoro: funzioni per i numeri interi
Una funzione Numero intero opera su 1 o più pattern di bit o numeri binari a livello dei loro singoli bit. Utilizza una funzione Numero intero per modificare i valori per confronti e calcoli. Le funzioni per i numeri interi possono essere utilizzate solo con i dati di tipo numerico.
Importante
Se come argomento si forniscono valori di tipo double o float, tali valori vengono troncati in modo da ottenere numeri interi a 64 bit. I valori negativi vengono trattati come complementi a 2 di un numero intero a 64 bit. Ad esempio, -16 e -16,9999 vengono trattati come 0xfffffffffffffff0.
BinaryAnd
BinaryAnd(n,m): restituisce un binario di (n) e (m). Il risultato è 1 se n e m sono uguali a 1, altrimenti è 0. Se 0 corrisponde a False e 1 a True, l'operazione BinaryAnd funziona come l'And logico. Nota l'assenza della separatore decimale nei valori dei risultati. Il risultato è un numero intero, non un valore a virgola mobile.
Esempio
BinaryAnd(1,1)restituisce 1.
BinaryAnd(1,0)restituisce 0.
BinaryAnd(12,6)restituisce 4.
BinaryAnd(12.99, 6.99)restituisce 4.
BinaryAnd(-12, 6.99)restituisce 4.
BinaryNot
BinaryNot(n): restituisce un Not binario di (n). I numeri sono trattati come complementi a 2 di numeri a 64 bit.
Esempio
BinaryNot(6)restituisce -7.
BinaryNot(2)restituisce -3.
BinaryNot(-1)restituisce 0.
BinaryNot(0)restituisce -1.
BinaryOr
BinaryOr(n,m): restituisce un Or binario di (n) e (m).
Esempio
BinaryOr(6,6)restituisce 6.
BinaryOr(6,2)restituisce 6.
BinaryOr(4,2)restituisce 6.
BinaryOr(12,6)restituisce 14.
BinaryXOr
BinaryXOr(n,m): restituisce un XOr binario di (n) e (m).
Esempio
BinaryXOr(6,6)restituisce 0.
BinaryXOr(6,2)restituisce 4.
BinaryXOr(6,12)restituisce 10.
ShiftLeft
ShiftLeft(n,b): sposta a sinistra (n) (come numero intero) di (b) bit.
ShiftRight
ShiftRight(n,b): sposta a destra (n) (come numero intero) di (b) bit.
ShiftLeft e ShiftRight restituiscono risultati in formato Int64, pertanto sono disponibili solo numeri interi a 64 bit.
Esempio
ShiftLeft(pow(2,62),1) restituisce -pow(2,63). Se lo sposti ancora una volta verso sinistra, ottieni zero.
ShiftRight(1,1)restituisce zero.
ShiftRight(-1,1)restituisce Int64_Max.