Em geral, você não precisa se preocupar com operações em algum lugar no nível de bit como desenvolvedor. Você pode conceituar em termos de bytes, int e duplos, e dados de nível superior. No entanto, há casos em que você deseja aumentar o zoom em uma única peça. Os bits em uma variável inteira são deslocados por um número definido de posições usando dois operadores de turno. O operador “>>” muda de bits para a direita, enquanto o operador muda de bits para a esquerda. Em geral, empregar os operadores de turno esquerdo e direito, em vez de calcular e depois multiplicação por um poder de dois, resultará em código substancialmente mais rápido.
Como resultado, podemos dividir o operador de mudança de bit em duas categorias principais:
Exemplo de operador de turno esquerdo
Em C, é um operador de turno bit netwise que funciona com bits. É um operador binário, o que significa que funciona com dois operandos. É usado para mover os pedaços de um valor para a esquerda adicionando zeros aos espaços vazios deixados após a mudança. Pelo número de lugares especificados pelo segundo operando, os primeiros bits de operando são movidos para a esquerda.
Sintaxe
“NameOfVariable”<O resultado da operação de turno esquerdo será desconhecido se o primeiro operando for negativo. Da mesma forma, se de alguma forma o valor do segundo operando é negativo ou mais que ou igual ao número de bits durante o primeiro operando, o resultado da operação de mudança de esquerda é indefinido. Considerando que, se o valor do segundo operando for maior que o tamanho do número inteiro, o resultado da operação de mudança de esquerda também seria indefinido.
Estamos implementando todos esses exemplos no Ubuntu 20.04 Sistema operacional Linux. Abra a janela do terminal do Ubuntu 20.04 Sistema operacional Linux e execute as seguintes instruções anexadas no shell para criar um arquivo intitulado “SheftShift.C ”. A extensão de arquivo é .c, que descreve o arquivo é para a linguagem de programação C.
$ nano -esquerda desvio.cApós a criação, o arquivo será aberto no editor GNU. Executar o código de programação listado abaixo.
Neste código, atribuímos os valores a "a" e "b" como "2" e "9" e aplicamos o operador de mudança de esquerda em ambos. Imprimimos o resultado utilizando a função printf (). Todo o código está escrito na função principal. Depois de salvar este arquivo, escreva os comandos listados abaixo para a execução e compilação do código acima mencionado com a ajuda do compilador GCC.
$ GCC SheftShift.cApós a execução, a saída é mostrada, pois você pode verificar a imagem em anexo.
Exemplo de operador de deslocamento direito
Dois números são usados como operando na operação de mudança certa (>>). O segundo operando determina se ou se o primeiro operando deve mudar corretamente os bits, bem como o número de lugares que devem ser deslocados. Em outras palavras, 0 é usado a menos que o número seja positivo e 1 seja usado quando o número é negativo.
Sintaxe
“NameOfVariable” >> ”totalPositionNumbers”Pode haver dois valores na linha acima; O primeiro é uma variável inteira para usar o operador de mudança certo. O nome desta variável pode ser qualquer coisa que o usuário queira que seja. O segundo valor é um número inteiro que define quantos lugares os bits devem ser deslocados para a direita.
Estamos implementando todos esses exemplos no Ubuntu 20.04 Sistema operacional Linux. Abra a janela do terminal do Ubuntu 20.04 Sistema operacional Linux e execute as seguintes instruções anexadas no shell para criar um arquivo intitulado “Rshift.C ”. A extensão de arquivo é .c, que descreve o arquivo é para a linguagem de programação C.
Após a criação, o arquivo será aberto no editor GNU. Executar o código de programação listado abaixo.
Neste código, atribuímos os valores a A e B como "5" e "9" e aplicamos o operador de mudança de esquerda em ambos. Imprimimos o resultado utilizando a função printf (). Todo o código está escrito na função principal. Depois de salvar este arquivo, escreva os comandos listados abaixo para a execução e compilação do código acima mencionado com a ajuda do compilador GCC.
$ GCC RSHIFT.cApós a execução, a saída é mostrada, pois você pode verificar a imagem em anexo.
Conclusão
Os operadores bitwise são um conjunto de operadores especiais dados pela linguagem de programação 'C'. Eles são empregados em programação no nível do bit. Em C /, aprendemos a utilizar os operadores de turno esquerdo e direito, que são importantes para operações de mudança de bits em números não assinados. Quando os operadores de turno são combinados, os dados da expressão inteira podem ser extraídos. Eu acredito que você usará facilmente operadores de turno com a assistência deste guia completo.