Binary arithmetic · Arithmétique binaire
| English | Français |
|---|---|
| register/ˈredʒɪstə/ | registre |
| overflow/ˌəʊvəˈfləʊ/ | débordement |
| two's complement/tuːz ˈkɒmplɪmənt/ | complément à deux |
| logical shift/ˈlɒdʒɪkl ʃɪft/ | décalage logique |
| most significant bit/məʊst sɪɡˈnɪfɪkənt bɪt/ | bit de poids fort |
Doing maths with 1s and 0s
- Computers add, shift and store negative numbers — all in binary.
- An 8-bit register 寄存器 has limits, so results can overflow 溢出.
- Two's complement 补码 lets us store negatives.
Effectuer des mathématiques avec des 1 et des 0
- Les ordinateurs ajoutent, déplacent et stockent des nombres négatifs — tout cela en binaire.
- Un registre sur 8 bits a des limites, donc les résultats peuvent déborder 溢出.
- Le complément à deux 补码 nous permet de stocker des négatifs.
Binary addition and overflow
- Add column by column from the right, carrying a 1: $1+1 = 10$ (write 0, carry 1).
- Example:
01110110(118) +00110000(48) =10100110(166). - An 8-bit register holds 0–255. A result above 255 needs a 9th bit that won't fit — this is overflow, and the stored answer is wrong.
An 8-bit place-value chart. The 1s sit under the values that add up to 150 (128 + 16 + 4 + 2).
Addition binaire et débordement
- Additionnez colonne par colonne en partant de la droite, en reportant un 1 : $1+1 = 10$ (écrivez 0, retenez 1).
- Exemple :
01110110(118) +00110000(48) =10100110(166). - Un registre sur 8 bits contient 0–255. Un résultat supérieur à 255 nécessite un 9e bit qui ne rentre pas — c'est un débordement, et la réponse stockée est fausse.

Tableau de valeurs de position sur 8 bits. Les 1 sont placés sous les valeurs s'additionnant à 150 (128 + 16 + 4 + 2).
Binary arithmetic · Arithmétique binaire
byte = Σ place values · octet = Σ valeurs de position
See how an 8-bit pattern stores a number from 0 to 255. · Voir comment un motif de 8 bits stocke un nombre de 0 à 255.
Add the binary numbers 0101 + 0011. Give the 4-bit result. · Ajoutez les nombres binaires 0101 + 0011. Donnez le résultat sur 4 bits.
5 + 3 = 8 = 1000.
Overflow in an 8-bit register happens when: · Le dépassement dans un registre de 8 bits survient lorsque :
An 8-bit register holds 0–255; a bigger result needs a 9th bit that cannot fit, so it is lost. · Un registre de 8 bits contient 0–255 ; un résultat plus grand nécessite un 9e bit qui ne peut pas s'y loger, donc il est perdu.
Logical binary shift
- A logical shift 逻辑移位 moves all bits left or right; bits off the end are lost and zeros fill the gap.
- A left shift multiplies by 2 per place; a right shift divides by 2 per place.
- Example:
00110101(53) left-shifted by 2 →11010100(212) = $53 \times 4$.
Each hexadecimal digit becomes its own 4-bit group (nibble): F = 1111, 0 = 0000, 8 = 1000.
Décalage logique binaire
- Un décalage logique 逻辑移位 déplace tous les bits vers la gauche ou la droite ; les bits sortis par l'extrémité sont perdus et des zéros comblent le vide.
- Un décalage à gauche multiplie par 2 par position ; un décalage à droite divise par 2 par position.
- Exemple :
00110101(53) décalé à gauche de 2 positions →11010100(212) = $53 \times 4$.

Chaque chiffre hexadécimal devient son propre groupe de 4 bits (demi-octet) : F = 1111, 0 = 0000, 8 = 1000.
A logical left shift by 1 multiplies an unsigned number by what? · Un décalage logique gauche de 1 multiplie un nombre non signé par quoi ?
Each left-shift place multiplies by 2 (a right shift divides by 2). · Chaque position de décalage gauche multiplie par 2 (un décalage droit divise par 2).
00110101 is 53. After a logical left shift of 2 places, what denary value does it hold? · 00110101 vaut 53. Après un décalage logique gauche de 2 positions, quelle valeur décimale contient-il ?
Left shift by 2 = ×4: 53 × 4 = 212 (11010100). · Décalage gauche de 2 = ×4 : 53 × 4 = 212 (11010100).
Two's complement (negatives)
- In two's complement, the most significant bit 最高有效位 has a negative value:
-128 64 32 16 8 4 2 1. - MSB 0 → positive; MSB 1 → negative.
- To make a number negative: write the positive, flip every bit, then add 1. e.g. $+40$ =
00101000→ flip11010111→ +1 →11011000= $-40$. - Range of 8-bit two's complement: −128 to +127.
The most significant bit is worth −128, so 11011000 = −128 + 64 + 16 + 8 = −40
Complément à deux (négatifs)
- Dans le complément à deux, le bit de poids fort 最高有效位 a une valeur négative :
-128 64 32 16 8 4 2 1. - Bit de poids fort (MSB) 0 → positif ; MSB 1 → négatif.
- Pour rendre un nombre négatif : écrivez le positif, inversez chaque bit, puis ajoutez 1. ex. : $+40$ =
00101000→ inversez11010111→ +1 →11011000= $-40$. - Plage du complément à deux sur 8 bits : -128 à +127.

Le bit de poids fort vaut -128, donc 11011000 = -128 + 64 + 16 + 8 = -40
What is the most negative value an 8-bit two's complement number can store? · Quelle est la valeur la plus négative qu'un nombre binaire à compléments à deux sur 8 bits peut stocker ?
The MSB is worth −128, so the range is −128 to +127. · Le MSB vaut −128, donc la plage va de −128 à +127.
You've got it
- add binary with carries; overflow = result needs a 9th bit an 8-bit register can't hold (0–255)
- logical shift: left = ×2, right = ÷2 per place; bits off the end are lost
- two's complement: MSB worth −128; flip bits and add 1 to negate; range −128 to +127
Vous avez compris
- additionner en binaire avec retenues ; débordement = le résultat nécessite un 9e bit qu'un registre sur 8 bits ne peut contenir (0–255)
- décalage logique : gauche = ×2, droite = ÷2 par position ; les bits sortis par l'extrémité sont perdus
- complément à deux : bit de poids fort vaut -128 ; inverser les bits et ajouter 1 pour négatif ; plage -128 à +127