Erlang - Operadores Bitwise
A seguir estão os operadores bit a bit disponíveis em Erlang.
Sr. Não. | Operador e descrição |
---|---|
1 | band Este é o operador “e” bit a bit |
2 | bor Este é o operador bit a bit “ou” |
3 | bxor Este é o bit a bit “xor” ou Exclusivo ou operador |
4 | bnot Este é o operador de negação bit a bit |
A seguir está a tabela de verdade mostrando esses operadores -
p | q | p & q | p | q | p ^ q |
---|---|---|---|---|
0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 0 |
1 | 0 | 0 | 1 | 1 |
O fragmento de código a seguir mostra como os vários operadores podem ser usados.
Exemplo
-module(helloworld).
-export([start/0]).
start() ->
io:fwrite("~w~n",[00111100 band 00001101]),
io:fwrite("~w~n",[00111100 bxor 00111100]),
io:fwrite("~w~n",[bnot 00111100]),
io:fwrite("~w~n",[00111100 bor 00111100]).
O resultado do programa acima será -
Resultado
76
0
-111101
111100