Elixir - Operadores Bitwise
Operadores bit a bit trabalham em bits e realizam operação bit a bit. Elixir fornece módulos bit a bit como parte do pacoteBitwise, então, para usá-los, você precisa usar o módulo bit a bit. Para usá-lo, digite o seguinte comando em seu shell -
use Bitwise
Suponha que A seja 5 e B seja 6 para os seguintes exemplos -
Operador | Descrição | Exemplo |
---|---|---|
&&& | O bit a bit e o operador copiam um bit para o resultado se ele existir em ambos os operandos. | A &&& B dará 4 |
||| | O operador bit a bit ou copia um bit para o resultado se ele existir em qualquer operando. | A ||| B dará 7 |
>>> | O operador de deslocamento para a direita bit a bit desloca os primeiros bits do operando para a direita pelo número especificado no segundo operando. | A >>> B dará 0 |
<<< | O operador de deslocamento para a esquerda bit a bit desloca os primeiros bits do operando para a esquerda pelo número especificado no segundo operando. | A <<< B dará 320 |
^^^ | O operador XOR bit a bit copia um bit para o resultado apenas se for diferente em ambos os operandos. | A ^^^ B dará 3 |
~~~ | O unário bit a bit não inverte os bits no número fornecido. | ~~~ A dará -6 |
Exemplo
Tente o código a seguir para entender todos os operadores aritméticos no Elixir.
a = 5
b = 6
use Bitwise
IO.puts("a &&& b " <> to_string(a &&& b))
IO.puts("a ||| b " <> to_string(a ||| b))
IO.puts("a >>> b " <> to_string(a >>> b))
IO.puts("a <<< b" <> to_string(a <<< b))
IO.puts("a ^^^ b " <> to_string(a ^^^ b))
IO.puts("~~~a " <> to_string(~~~a))
O programa acima gera o seguinte resultado -
a &&& b 4
a ||| b 7
a >>> b 0
a <<< b 320
a ^^^ b 3
~~~a -6