Circuits logiques
Que devient la valeur d'un nombre binaire décalé d'un bit vers la gauche (en l'absence de débordement) ?
- AElle double
- BElle est divisée par deux
- CElle augmente de 1
Afficher la réponse et l'explication
Réponse : A. Elle double
En binaire, chaque rang ayant un poids double du précédent, un décalage d'un bit vers la gauche avec insertion d'un 0 en poids faible double la valeur, et un décalage vers la droite la divise par deux (troncature). Un décalage de n bits multiplie ou divise par 2ⁿ. Bien plus petit et rapide qu'un multiplieur-diviseur, il est utilisé par les compilateurs pour remplacer x × 8 par x << 3. Pour le décalage à droite d'un nombre signé, il faut utiliser le décalage arithmétique, qui recopie le bit de signe, sinon les nombres négatifs ne sont pas correctement divisés.