Operadores de troca

2 respostas
B

qual a diferenca entre usar os operadores >> e >>> ?

2 Respostas

S

operador >>: Shift-à_direita (shift-right)
operador >>>: Shift-a-direita-sem-sinal (unsigned shift-right)

Enquanto o primeiro “apenas empurra” os bits de um inteiro uma posição para a direita, MAS PRESERVA o bit de sinal (o mais à esquerda);

o segundo empurra os bits TODOS para direita ACRESCENTANDO zeros à esquerda, inclusive no bit de sinal!

Por exemplo, com 8 bits, temos:

int x = -4; // x = 11111100
x = x >> 1; // x = 11111110 = -2

int x = -4; // x = 11111100
y = y >>> 1; // x = 01111110 = 126

Legal, né?

C

Ta ai os numeros binarios!! rsrr :grin:

Abracao e te +

Criado 21 de julho de 2004
Ultima resposta 22 de jul. de 2004
Respostas 2
Participantes 3