Índice:
Definição - O que significa Bitwise Operator?
Um operador bit a bit é um operador usado para executar operações bit a bit em padrões de bits ou números binários que envolvem a manipulação de bits individuais.
Operadores bit a bit são usados em:
- Pilhas de comunicação em que os bits individuais no cabeçalho anexado aos dados significam informações importantes
- Software incorporado para controlar diferentes funções no chip e indicar o status do hardware, manipulando os bits individuais dos registros de hardware dos microcontroladores incorporados
- Programação de baixo nível para aplicativos como drivers de dispositivo, software criptográfico, software de decodificação de vídeo, alocadores de memória, software de compactação e gráficos
- Manter grandes conjuntos de números inteiros com eficiência em problemas de pesquisa e otimização
- Operações bit a bit executadas em sinalizadores de bit, que podem permitir que uma instância do tipo de enumeração armazene qualquer combinação de valores definidos em uma lista de enumeradores
Techopedia explica o Bitwise Operator
Diferentemente dos operadores lógicos comuns (como +, -, *), que funcionam com bytes ou grupos de bytes, os operadores bit a bit podem verificar ou definir cada um dos bits individuais em um byte. Os operadores bit a bit nunca causam estouro porque o resultado produzido após a operação bit a bit está dentro do intervalo de valores possíveis para o tipo numérico envolvido.
Os operadores bit a bit usados na família de linguagens C (C #, C e C ++) são:
- OU (|): O resultado é verdadeiro se qualquer um dos operandos for verdadeiro.
- AND (&): O resultado é verdadeiro apenas se os dois operandos forem verdadeiros. Pode ser usado para configurar uma máscara para verificar os valores de determinados bits.
- XOR (^): O resultado é verdadeiro apenas se um de seus operandos for verdadeiro. É usado principalmente para alternar certos bits. Também ajuda a trocar duas variáveis sem usar uma terceira.
- Complemento bit a bit ou inversão ou NOT (~): fornece o complemento bit a bit de um operando, invertendo seu valor de modo que todos os zeros sejam transformados em um e todos os zeros.
- Operador >> (Shift à direita) e << (Shift à esquerda): move os bits do número de posições especificado pelo segundo operando na direção direita ou esquerda. Enquanto a operação de deslocamento à direita é uma mudança aritmética para operandos do tipo int ou long, é uma mudança lógica para operandos do tipo uint ou ulong. Operadores de turno são usados no alinhamento de bits.
A ordem de precedência (do maior para o menor) nos operadores bit a bit é:
- ~
- << e >>
- &
- ^
- |