Guillemets

Fermé
adreda Messages postés 5 Date d'inscription jeudi 16 mai 2013 Statut Membre Dernière intervention 11 février 2014 - 11 févr. 2014 à 17:36
 VoiliVoilou - 10 juin 2014 à 03:26
Bonjour,
J'ai une petite question ...

Int add = 1<<(shift-1);
A = (B + add)>>shift;


Je m'intéresse ni à A ni à B.
Je voudrai juste savoir c'est quoi le rôle du 'shift' et des << >>.
Merci d'avance,

2 réponses

Bonjour,

Si deux variables entières X et Y :

X << Y décale les bits de X (à l'intérieur des octets de la variable X) sur la gauche, Y fois (operateur shift left)

X >> Y décale les bits de X (à l'intérieur des octets de la variable X) sur la droite, Y fois (operateur shift right)
1
VoiliVoilou
10 juin 2014 à 03:26
on peut voir comme une valeur exponentiel :

exemple pour 2 << 1 = est comme un résultat exponentiel de 2² = 4

2^8 = 256 et ( 2 << 7 ) = 256

autre

0010 bin = 2 dec donc ( 0010b << 7 ) on decale de 7 rang vers la gauche ce qui donne 1 000 000 bin
1