“jairelton”:
Talvez short sirva:
short s1 = 0;
short s2 = 255;
Mas na verdade eu queria trabalhar com uma variável só. Não tem jeito?
Eu queria testar também os operadores de bits, mas pra testar com int são variáveis muito grandes (4 bytes).
Mais exatamente eu queria enteder direito a diferença entre os operadores
>> e >>>.
por exemplo um número como
1 1111111.11111111.11111111.11111101 (int x = -3)
se eu fizer int y = x >> 2 vai dar -1
mas inserindo 00 à esquerda fica
1 0011111.11111111.11111111.11111111 descartando os últimos 01
então invertendo fica
1 1100000.00000000.00000000.00000000
que dá 1.610.612.736 + 1 = 1.610.612.737
dando -1.610.612.737
neste caso eu não entendi.
se eu fizer int y = x >>> 2 vai dar 1.073.741.823
00111111.11111111.11111111.11111111 descartando os últimos 01
neste caso o valor bateu com os bits e ficou claro.
Resumindo, o que eu preciso saber é como ficam os bits depois dos operadores >> e >>> .
Se puder me dizer como ficam os bits em cada caso eu agradeço.