unsigned long a=585;
alguem ai sabe qual é o tipo e valor de retorno dessa operação da linguagem c:.
a<<8.
unsigned long a=585;
alguem ai sabe qual é o tipo e valor de retorno dessa operação da linguagem c:.
a<<8.
Olhe para os bits. Um long tem 32 bits.
Logo, esse número será representado assim, por 4 bytes:
00000000 00000000 00000100 1001001
Agora vc “afasta” 8 bits para esquerda, o que dá o número:
00000000 00000100 1001001 00000000
E isso em decimal é: 149760
Quando fizer operações de bits, não fique olhando no valor decimal dos números. Eles geralmente tem pouco significado. Pense no valor daquele número em binário.
muito obrigado.
e se em vez do valor 585. podesse ser outros valores.
só que desta vez fosse armazenado numa variavel long e em java.
acho que a mesma operaçao bi a bit nao faria diferença. ou faria. porque long em java tem 64 bits.
Não faria. Zeros a esquerda do número não tem qualquer valor.
Faria diferença se a variável fosse menor, um short. Nesse caso, os bits que “caíssem fora” seriam descartados.
isso me ajudou muito.
obrigado.