[quote=“JAVAINICIANDO”]Tenho dois números binarios > Ex: 100010 e 110010, eu queria pegar posição por posição e fazer um XOR entre eles.
Eu queria saber se existe algum método que faz isso? Ou vou ter que fazer usando um IF mesmo?!
EX:
[color=“red”]100010 -> 1 0 0 …
XOR
110010 -> 1 1 0 …
RESULTADO -> 0 1 0 …[/color][/quote]
[quote]OPERADORES DE DESLOCAMENTO BIT-A-BIT
O operador de deslocamento bit-a-bit para a esquerda, anotado como <<, faz com que os bits sejam deslocados o número de casas indicadas, ou seja, multiplica-se o número original por 2 elevado ao número de casas indicado. Veja:
int meuNro = 3;
int meuShift = meuNro << 2;
O valor de meuShift é igual a 12. Acompanhe: o valor binário de 3 é 0011. Deslocando os bits duas casas à esquerda teremos 1100, que corresponde a 12. Efetuamos em binário o mesmo que 3 x (2 ao quadrado) ou 3 x 4 = 12.
O operador de deslocamento bit-a-bit para a direita, anotado como >>, faz com que os bits sejam deslocados o número de casas indicadas, ou seja, obtém-se o valor inteiro da divisão do número original por 2 elevado ao número de casas indicado. Veja:
int nroOriginal = 15;
int meuShift = nroOriginal >> 1;
O valor de meuShift é igual a 7. Acompanhe: o valor binário de 15 é 1111. Deslocando os bits uma casa à direita teremos 0111, que corresponde a 7. Efetuamos em binário o mesmo que 15 / (2 elevado a 1) ou o inteiro de 15 / 2 = 7.
[/quote]
[quote]Operadores de Deslocamento: <<, >> e >>>
Operação de deslocamento corresponde simplesmente a mover bits para a direita ou para a esquerda. Exemplos de deslocamento estão retratados na figura 2.
Dado original 00000000 11000000
Deslocado 1 bit para a esquerda 00000000 10000000
Deslocado 1 bit para a direita 00000000 01100000
O resultado de um valor que sofreu deslocamento contém a mesma quantidade de bits do valor original. Os bits deslocados para fora da representação são descartados. Os novos bits que entram na representação após o deslocamento são 0 caso seja usado o operador de deslocamento à esquerda (<<) ou o operador de deslocamento à direita sem sinal (>>>). O operador de deslocamento à direita com sinal (>>) comporta-se de maneira diferente. Quando o operador >> é usado, os novos bits que entram na representação têm o mesmo valor do bit mais significativo antes do deslocamento. Por exemplo, se o bit mais significativo seja 1 (o número é negativo), bits com valor 1 são introduzidos no caso de um deslocamento.[/quote]
aqui tbm :arrow: :idea:
É isso ?
Um Abraço!