Partilhar via


Expressões bit-a-bit

Os operadores bit-a-bit são expressos como três carateres sem letra. Além das versões bit-a-bit para AND (&&&), OR (|||) e NOT (~~~), também existe um XOR bit-a-bit (^^^). Esperam operandos do tipo Int ou BigInt, e para operadores binários, o tipo de ambos os operandos tem de corresponder. O tipo de expressão inteira é igual ao tipo de operando(s).

Além disso, os operadores de turnos esquerdo e direito (<<< e >>> respetivamente) existem, multiplicando ou dividindo a expressão do lado esquerdo (lhs) dada por potências de dois. A expressão lhs <<< 3 desloca a representação de bits de lhs por três, o que significa que lhs é multiplicada por 2^3, desde que ainda esteja dentro do intervalo válido para o tipo de dados de lhs. Os lhs podem ser do tipo Int ou BigInt. A expressão do lado direito tem sempre de ser do tipo Int. A expressão resultante será do mesmo tipo que o operando lhs.