Ola!
Depois de tanto ver pessoas usando, e continuar sem entender o uso, venho pedir a ajudar dos amigos do GUJ.
quant_byte = byte<<0x08;
Deslocamento de byte… como isso funciona?
Ola!
Depois de tanto ver pessoas usando, e continuar sem entender o uso, venho pedir a ajudar dos amigos do GUJ.
quant_byte = byte<<0x08;
Deslocamento de byte… como isso funciona?
Pegue um número, converta-o para binário, e copie os zeros e uns para uma quadrinho como este:
(Vou dar o exemplo com [telefone removido], que é o número 0xCAFEBABE em hexadecimal, ou 11001010111111101011101010111110 em binário.)
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|1|1|0|0|1|0|1|0|1|1|1|1|1|1|1|0|1|0|1|1|1|0|1|0|1|0|1|1|1|1|1|0|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Shiftar alguma coisa 8 posições, conforme você mostrou, é ir deslocando os bits (0 e 1) que mostrei no quadrinho para a esquerda, e completar à direita com zeros. Se sobrar alguma coisa, os bits vão sendo jogados fora. A seguir, você converte de novo de binário para decimal.
Entendido! mas ainda não vi uma finalidade nisso!
De qualquer forma obrigado pela resposta!
Boa tarde,
Complementando a ótima resposta do Thingol, segue dois links que me ajudaram muito a entender as operações bitwise:
http://www.vipan.com/htdocs/bitwisehelp.html
http://www.gamedev.net/reference/articles/article1563.asp (este trata sobre o assunto em C/C++)
O uso do & é na verificação de máscaras (por exemplo, se você quer testar se uma determinada cor possui a cor vermelha, poderia proceder da seguinte forma):
int RED_MASK = 0x00FF0000;
if((myColor & RED_MASK) == RED_MASK)
{
//...
}
EDIT: Respondendo sua pergunta acima, ao fazer o deslocamento de bits utilizando o <<, por exemplo, vc multiplica o valor por 2 vezes o número do deslocamento:
Exemplo:
int a = 10;
a = a << 2; //a vale 40 = 10 * 2 * 2
Dê uma olhada nos links que posto aí em cima 
Abraços
(5 edits para aparecer o bendito “a” na área code :shock: )
ótimo site… tô olhando
muito obrigado!!!
Ainda bem que não cai mais isso no SCJP 5…