Bases de la programmation (trace de pseudo-code)
x et y sont des entiers non signés sur 8 bits. << et >> sont des décalages logiques : les bits libérés sont remplis par 0, et les bits qui sortent des 8 bits sont perdus. ∨ désigne le OU bit à bit. Avec x = 75, quelle est la valeur de y après l'affectation suivante ?
8-bit: x ← 75, y
y ← (x << 4) ∨ (x >> 4)
- A75
- B180
- C210
Afficher la réponse et l'explication
Réponse : B. 180
75 s'écrit 0100 1011 en binaire. x << 4 déplace les 4 bits de poids faible vers le haut, ce qui donne 1011 0000 = 176 (le 0100 qui sort est perdu), et x >> 4 déplace les 4 bits de poids fort vers le bas, ce qui donne 0000 0100 = 4. Leur OU vaut 1011 0100 = 180 : les 4 bits de poids fort et les 4 bits de poids faible sont échangés. Traiter x << 4 comme 75 × 16 = 1200, sans le limiter à 8 bits, changerait le résultat.
Continuer : 9 autres questions sur Bases de la programmation (trace de pseudo-code)