Key Difference – Bitwise vs Operadores Lógicos
Em programação, existem situações para realizar cálculos matemáticos. Um operador é um símbolo de linguagens de programação para executar funções lógicas ou matemáticas específicas em um valor ou variável. Existem vários operadores em linguagens de programação. Alguns deles são operadores aritméticos, operadores relacionais, operadores lógicos, operadores bit a bit e operadores de atribuição. Os operadores aritméticos suportam operações matemáticas como adição (+), subtração (-), divisão (/), multiplicação (), módulo (%), incremento (++) e decremento (–). Os operadores de relação são >, >=, <, <=,==ou !=. Esses operadores ajudam a encontrar a relação dos operandos. Os operadores de atribuição atribuem valores do operando do lado direito ao operando do lado esquerdo. Os operadores bit a bit são &, |, ^. Os operadores lógicos são &&, ||, !. Este artigo discute a diferença entre operadores bit a bit e lógicos. A principal diferença entre os operadores Bitwise e Lógicos é que os operadores Bitwise trabalham em bits e realizam operações bit a bit, enquanto os operadores lógicos são usados para tomar uma decisão com base em várias condições.
O que são Operadores Bitwise?
Os operadores bit a bit trabalham em bits e realizam operações bit a bit. Em cálculos como adição, subtração, multiplicação, divisão etc. os valores são convertidos em binários. Essas operações são executadas em nível de bit. O processamento em nível de bits é usado para aumentar a velocidade e economizar energia. Alguns exemplos de operadores Bitwise são os seguintes. O & representa o AND bit a bit. O | representa o OR bit a bit. O ^ representa o OR exclusivo bit a bit. O ~ é o complemento. O símbolorepresenta o deslocamento à direita.<>
A operação AND bit a bit é a seguinte. Quando x e y são operandos, e x tem valor 0 e y tem valor 0, então AND bit a bit é 0. Quando x é 0 e y é 1, então AND bit a bit é 0. Se x é 1 e y é 0, então o AND bit a bit é 0. Quando xey tem 1, o AND bit a bit é 1. A saída será 1 somente se ambos os operandos contiverem o valor 1. Assuma 20 e 25 como dois valores. O binário de 20 é 10100. O binário de 25 é 11001. O AND bit a bit desses dois números é 10000. Ao realizar a operação AND bit a bit, o valor um só vem quando ambos os operandos contêm um.
A operação OR bit a bit é a seguinte. Quando x e y são operandos, e x tem valor 0 e y tem valor 0, então OR bit a bit é 0. Quando x é 0 e y é 1, então a saída é 1. Quando x é 1 e y é 0, a saída é 1. Quando xey têm valor 1, a saída é 1. De dois operandos, se um dos operandos for 1, então o Bitwise OR será 1. Assuma 20 e 25 como dois valores. O binário de 20 é 10100. O binário de 25 é 11001. O OR bit a bit de 20 e 25 é 11101.
O operador XOR bit a bit dará 1 se ambos os valores forem diferentes. Quando os operandos x e y são zeros, então o Bitwise XOR é 0. Quando x é 0 e y é 1, a saída é 1. Quando x é 1 e y é 0, então a saída é 1. Quando x e y são 1, então a saída é 0. O Bitwise XOR de 20 e 25 é 01101. O símbolo ~ é para tomar o complemento do valor. O valor binário de 20 é 10100. O complemento é ~20=01011. É para converter uns em zeros e converter os zeros em uns.
O << é o operador binário de deslocamento à esquerda. O valor do operando esquerdo é movido para a esquerda pelo número de bits especificado pelo operando direito. No exemplo 5 << 1, o valor binário de 5 é 0101. 0101 é o operador binário de deslocamento à direita. O valor do operando esquerdo é movido para a direita pelo número de bits especificado pelo operando direito. Como exemplo, 5 >>1, 0101 >> 1 é 0010.<>
O que são operadores lógicos?
Os operadores lógicos são usados para tomar uma decisão baseada em múltiplas condições. O símbolo && representa o AND lógico. O || símbolo representa o OR lógico. O ! símbolo representa o NÃO lógico. Em AND lógico, se ambos os operandos forem diferentes de zero, a condição se torna verdadeira. Em OR lógico, se ambos os operandos forem diferentes de zero, a condição se torna verdadeira. O ! operador pode reverter o status lógico do operando. Se uma condição for verdadeira, o operador lógico NOT a tornará falsa. O verdadeiro representa o valor 1 e o falso representa o valor 0.
Figura 01: Operadores Lógicos e Bitwise
Quando a variável x está segurando o valor 1 e a variável y está segurando o valor 0, o AND lógico que é (x && y) é falso ou 0. O OR lógico que é (x || y) dará true ou 1. O operador NOT inverte o status lógico. Quando x tem valor 1, então ! x é 0. Quando y tem valor 0, então !y é 1.
Qual é a semelhança entre operadores lógicos e bit a bit?
Ambos são operadores em programação para executar funções lógicas ou matemáticas específicas em um valor ou uma variável
Qual é a diferença entre operadores lógicos e bit a bit?
Bitwise vs Operadores Lógicos |
|
Operador bit a bit é o tipo de operador fornecido pela linguagem de programação para realizar cálculos. | Operador Lógico é um tipo de operador fornecido pela linguagem de programação para realizar operações baseadas em lógica. |
Funcionalidade | |
Os operadores bit a bit trabalham em bits e realizam operações bit a bit. | Os operadores lógicos são usados para tomar uma decisão com base em várias condições. |
Temas | |
Os operadores bit a bit são &, |, ^, ~,.<> | Os operadores lógicos são &&, ||, ! |
Resumo – Bitwise vs Operadores Lógicos
Na programação, é necessário realizar operações matemáticas e lógicas. Eles podem ser alcançados usando operadores. Existem vários tipos de operadores. Este artigo discutiu a diferença entre dois operadores, como operadores bit a bit e operadores lógicos. A diferença entre os operadores Bitwise e Lógicos é que os operadores Bitwise trabalham em bits e realizam operações bit a bit, enquanto os operadores lógicos são usados para tomar uma decisão com base em várias condições.
Baixe o PDF de Bitwise vs Operadores Lógicos
Você pode baixar a versão em PDF deste artigo e usá-la para fins offline conforme nota de citação. Faça o download da versão em PDF aqui: Diferença entre operadores bit a bit e lógicos