Numérique · Compétences informatiques
Système binaire
Le système binaire écrit les nombres avec deux chiffres, 0 et 1, chaque position valant une puissance de 2. C’est le langage de base des ordinateurs, dont les circuits ont deux états.
Mis à jour le 4 min de lecture
Nous comptons habituellement en base 10 (système décimal), avec dix chiffres de 0 à 9. Le système binaire est la base 2 : il n’utilise que 0 et 1. Chaque chiffre binaire s’appelle un bit (contraction de binary digit). Le mathématicien allemand Gottfried Wilhelm Leibniz en a donné une présentation systématique en 1703 ; George Boole a fondé au XIXe siècle l’algèbre logique qui lui est associée, et Claude Shannon a montré en 1937-1938 qu’on pouvait réaliser cette logique avec des circuits électriques.
Le principe : la valeur de position
En base 10, dans 345, le 3 vaut 3 centaines, le 4 vaut 4 dizaines, le 5 vaut 5 unités : chaque rang vaut dix fois le précédent. En binaire, chaque rang vaut deux fois le précédent :
| Rang (de droite à gauche) | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|---|---|---|---|---|---|---|---|---|
| Puissance de 2 | 2⁷ | 2⁶ | 2⁵ | 2⁴ | 2³ | 2² | 2¹ | 2⁰ |
| Valeur | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
Convertir du binaire au décimal
On additionne les valeurs des rangs où figure un 1.
Convertir du décimal au binaire
Méthode des divisions successives
On divise par 2 en notant les restes, jusqu’à obtenir un quotient nul, puis on lit les restes de bas en haut.
| Division | Quotient | Reste |
|---|---|---|
| 13 ÷ 2 | 6 | 1 |
| 6 ÷ 2 | 3 | 0 |
| 3 ÷ 2 | 1 | 1 |
| 1 ÷ 2 | 0 | 1 |
Lecture de bas en haut : 13 = 1101 en binaire.
Méthode des puissances de 2
On retire la plus grande puissance de 2 possible, puis on recommence. Pour 45 : 45 − 32 = 13 ; 13 − 8 = 5 ; 5 − 4 = 1 ; 1 − 1 = 0. On met un 1 aux rangs 32, 8, 4 et 1, un 0 ailleurs : 45 = 101101.
Table de correspondance de 0 à 15
| Décimal | Binaire | Hexadécimal |
|---|---|---|
| 0 | 0000 | 0 |
| 1 | 0001 | 1 |
| 2 | 0010 | 2 |
| 3 | 0011 | 3 |
| 4 | 0100 | 4 |
| 5 | 0101 | 5 |
| 6 | 0110 | 6 |
| 7 | 0111 | 7 |
| 8 | 1000 | 8 |
| 9 | 1001 | 9 |
| 10 | 1010 | A |
| 11 | 1011 | B |
| 12 | 1100 | C |
| 13 | 1101 | D |
| 14 | 1110 | E |
| 15 | 1111 | F |
Additionner en binaire
Les règles tiennent en quatre lignes : 0 + 0 = 0 ; 0 + 1 = 1 ; 1 + 1 = 10 (on pose 0, on retient 1) ; 1 + 1 + 1 = 11 (on pose 1, on retient 1).
C’est exactement ce que fait un circuit additionneur dans un processeur, à l’aide de portes logiques (ET, OU, OU exclusif).
L’hexadécimal, raccourci du binaire
Les longues suites de 0 et de 1 sont illisibles. On utilise donc la base 16 (hexadécimal), avec les chiffres 0 à 9 puis A à F. Un chiffre hexadécimal correspond exactement à 4 bits, et un octet à deux chiffres : 11001010 = 1100 1010 = CA. On le retrouve dans les codes couleur du Web (#FF0000 = rouge pur), les adresses IPv6 (voir adresse IP) et les adresses mémoire.
Pourquoi les ordinateurs utilisent-ils le binaire ?
- Un transistor se comporte comme un interrupteur : le courant passe ou ne passe pas. Deux états suffisent, et sont faciles à distinguer de façon fiable malgré le bruit électrique.
- L'algèbre de Boole (vrai / faux) se traduit directement en circuits, ce qui permet de construire tout calcul à partir de portes logiques élémentaires.
- Le binaire se stocke facilement : charge électrique (mémoire flash), aimantation (disque dur), creux et plats (disques optiques).
Voir fonctionnement d’un ordinateur.
Tout est codé en binaire
| Information | Codage |
|---|---|
| Nombre entier | Binaire positionnel (avec un procédé appelé complément à deux pour les négatifs) |
| Nombre à virgule | Norme IEEE 754 (signe, exposant, mantisse) |
| Texte | Chaque caractère a un numéro : ASCII (7 bits, « A » = 65 = 1000001), puis Unicode encodé en UTF-8 pour toutes les écritures du monde |
| Image | Chaque pixel est codé par des valeurs de rouge, vert et bleu (souvent 8 bits chacune) |
| Son | Amplitude de l’onde mesurée des milliers de fois par seconde (44 100 fois pour le CD audio) |
Avec n bits, on peut représenter 2ⁿ valeurs différentes : 8 bits (un octet) donnent 256 valeurs, de 0 à 255. C’est pourquoi chaque nombre d’une adresse IPv4 va de 0 à 255.
Questions fréquentes
Comment écrit-on 10 en binaire ?
10 = 8 + 2, donc 1010. Attention : « 10 » écrit en binaire vaut 2 en décimal ; on précise souvent la base (10₂ ou 0b10).
Combien de bits dans un octet ?
Huit. Un octet permet de représenter 256 valeurs (de 00000000 à 11111111, soit de 0 à 255).
Quel est le plus grand nombre sur 8 bits ?
11111111, soit 255 (2⁸ − 1).
Qui a inventé le système binaire ?
Le principe apparaît chez plusieurs auteurs ; Leibniz en publie l’exposé de référence en 1703 (« Explication de l’arithmétique binaire »). Son application aux circuits électriques est due à Claude Shannon, en 1937-1938.