Matemática do fluxo de trabalho: funções inteiro
Uma função inteiro opera em um ou mais padrões de bit ou numerais binários no nível de seus bits individuais. Use uma função inteiro para manipular valores para comparações e cálculos. Funções inteiro só podem ser usadas com tipos de dados numéricos.
Importante
Se valores Double/Float forem fornecidos como argumentos, eles serão truncados para números inteiros de 64 bits. Os valores negativos são tratados como um complemento de dois, números inteiros de 64 bits. Ou seja, -16 e -16,9999 são tratados como 0xfffffffffffffff0.
BinaryAnd
BinaryAnd(n,m): retorna um binário AND de (n) e (m). O resultado é 1 se ambos n e m forem 1; senão, o resultado é 0. Se 0 for equiparado a "Falso" e 1 a "Verdadeiro", a operação BinaryAnd funciona como um AND lógico. Observe a ausência do ponto decimal nos valores de resultado. O resultado é um número inteiro, não um valor Float.
Exemplo
BinaryAnd(1,1)retorna 1.
BinaryAnd(1,0)retorna 0.
BinaryAnd(12,6)retorna 4.
BinaryAnd(12.99, 6.99)retorna 4.
BinaryAnd(-12, 6.99)retorna 4.
BinaryNot
BinaryNot(n): retorna um binário Not de (n). Os números são tratados como números complementares de 64 bits.
Exemplo
BinaryNot(6)retorna -7.
BinaryNot(2)retorna -3.
BinaryNot(-1)retorna 0.
BinaryNot(0)retorna -1.
BinaryOr
BinaryOr(n,m): retorna um binário Or de (n) e (m).
Exemplo
BinaryOr(6,6)retorna 6.
BinaryOr(6,2)retorna 6.
BinaryOr(4,2)retorna 6.
BinaryOr(12,6)retorna 14.
BinaryXOr
BinaryXOr(n,m): retorna um binário XOr de (n) e (m).
Exemplo
BinaryXOr(6,6)retorna 0.
BinaryXOr(6,2)retorna 4.
BinaryXOr(6,12)retorna 10.
ShiftLeft
ShiftLeft(n,b): desloca (n) à esquerda (como número inteiro) por (b) bits.
ShiftRight
ShiftRight(n,b): desloca (n) à direita (como número inteiro) por (b) bits.
Para ShiftLeft e ShiftRight, o resultado é um Int64, portanto, apenas 64 bits estão disponíveis.
Exemplo
ShiftLeft(pow(2,62),1)retorna-pow(2,63). Para a esquerda, você obtém zero.
ShiftRight(1,1)retorna zero.
ShiftRight(-1,1)retornaInt64_Max.