Bonjour,
j'imagine que cette question est fréquente, mais.. je ne comprends pas :
lorsque j'utilise l'opérateur de bits <<=, un 1 s'ajoute là où un zéro est attendu
unsigned short value = 511;
value >>= 8;
value <<= 8;
On dirait que c'est du code Gray, donc..
511 -> 00000001 00000000
value >>= 8; donne 1 en décimal, donc 00000000 00000001 en Gray, OK
mais
value <<= 8; renvoie 256 soit 00000001 10000000 alors que j'attends 511.
Je ne comprends pas d'où vient le 1 le plus à droite.
J'ai essayé avec short "tout court", mais c'est pareil.
Quelqu'un peut-il m'expliquer où je me trompe SVP ?
Désolée si cette question a déjà été résolues 100 fois.. Le lien vers le post réponse me conviendrait tout à fait...
Merci
Partager