Pouco mudando

Definição - o que significa deslocamento de bits?

O deslocamento de bits é uma operação feita em todos os bits de um valor binário em que eles são movidos por um determinado número de casas para a esquerda ou direita. O deslocamento de bits é usado quando o operando está sendo usado como uma série de bits em vez de como um todo. Em outras palavras, o operando é tratado como bits individuais que representam algo e não como um valor.

O deslocamento de bits é frequentemente usado na programação e tem pelo menos uma variação em cada linguagem de programação.

O deslocamento de bits também pode ser conhecido como uma operação bit a bit.

Definirtec explica o deslocamento de bits

Existem duas variações de deslocamento de bits, deslocamento para a direita e deslocamento para a esquerda, e é definido posteriormente pelo número de locais em que a alteração deve ocorrer. Por exemplo, deslocando o operando um valor para a esquerda ou deslocando os bits "n" valores para a direita.

Existem também dois tipos de deslocamento de bits, lógico e aritmético. O deslocamento lógico de bits pode ser útil para multiplicar ou dividir inteiros sem sinal por potências de dois. Por exemplo, se o valor "0001" ou "1" for deslocado para a esquerda, ele se tornará "0010" ou "2", deslocado para a esquerda novamente se tornará "0100" ou "4". Deslocar para a direita tem o efeito oposto de dividir o valor por dois por turno. Na maioria dos casos, o deslocamento é tratado como circular, portanto, ao alternar para a esquerda, o valor mais à esquerda se torna o valor mais à direita e vice-versa.

O deslocamento lógico para a esquerda e o deslocamento aritmético para a esquerda têm o mesmo efeito, então Java possui apenas um único operador de deslocamento para a esquerda (<<). O deslocamento aritmético para a direita é (>>), enquanto o lógico é (>>>). Em C e C ++, há apenas um operador shift right (>>); o tipo de deslocamento a ser feito é determinado pelo tipo de número inteiro que está sendo deslocado. Inteiros com sinal são deslocados usando aritmética, enquanto o deslocamento lógico de bits é usado em inteiros sem sinal. O deslocamento de bits também é muito usado na programação de montagem porque os microcontroladores e microprocessadores geralmente dependem de sinalizadores, que são representados por bits individuais. Basicamente, é porque o sistema numérico binário é usado na programação em linguagem assembly que a mudança de bits se torna um operador comumente usado.