Operadores de Deslocamento

4 respostas
L

Bom, estou estudando que nem um camelo pra tirar essa certificação e surgiu mais uma dúvida:
será que alguem pode me explicar direitinho como funcionam os operadores de deslocamento?!
eu tenho a apostila da sun e da globalcode e nem assim consegui entender.
Na verdade eu entendi, mas eu queria uma lógica, uma regra, pra conseguir resolver mais rápido as questões.

Valeu!

4 Respostas

T

Tem uma regra assim:

8>>2 , o resultado é 2. pois você divide 8 por 2 elevado a 2
Ex: 8/2*2.
8 = 1000. deslocando dois bits para a direita fica 0010, que é 2

8>>3, o resultado é 1. Ex: 8 / 222


8<<2, o resultado é 32, pois com o deslocamento para a esquerda, você multiplica 8 por 2 elevado ao operando da direita, que nesse caso é o 2.
Ex: 8 * 2 * 2.
8=1000, que deslocando 2 bits para a esquerda fica 0010 0000, que é 32.

8<<3 , o resultado é 64.
Ex: 8 * 2 * 2 * 2.

Espero ter ajudado.

L

valeu! eu acabei chegando nisso mesmo…
mas ainda tinha esperança de ter alguma regrinha mais fácil…

valeu!

L

Colega tuledux, valeu pela explicação. Eu tinha aprendido essa regra de uma outra forma e vejo que dessa maneira fica bem mais facil e rapido em resolver.

Agora vc teria uma exemplo simples de troca com numeros negativos e outro com o operador >>>?

Grato e um abraço,

J

Olá,

a revista Mundo Java deste mes traz um artigo exatamente sobre isso.
Vale a pena conferir!

Abraços!

Criado 13 de julho de 2005
Ultima resposta 25 de jul. de 2005
Respostas 4
Participantes 4