Avec 1 bit on peut avoir 2 états différents
Valeur binaire | Valeur décimale |
---|---|
0 | 0 |
1 | 1 |
Avec 2 bits on peut avoir 22 états différents
Valeur binaire | Valeur décimale |
---|---|
00 | 0 |
01 | 1 |
10 | 2 |
11 | 3 |
Avec 3 bits on peut avoir 23 états différents
Valeur binaire | Valeur décimale |
---|---|
000 | 0 |
001 | 1 |
010 | 2 |
011 | 3 |
100 | 4 |
101 | 5 |
110 | 6 |
111 | 7 |
Avec n bits on peut avoir 2n états différents
Poids des bits
Dans un nombre binaire, la valeur d'un bit, appelée poids, dépend de la position du bit en partant de la droite. A la manière des dizaines, des centaines et des milliers pour un nombre décimal, le poids d'un bit croît d'une puissance de deux en allant de la droite vers la gauche.
Exemple, le nombre binaire 011010011
Nombre binaire | 0 | 1 | 1 | 0 | 1 | 0 | 1 | 1 |
Poids | 27 = 128 | 26 = 64 | 25 = 32 | 24 = 16 | 23 = 8 | 22 = 4 | 21 = 2 | 20 = 1 |
Conversions
Pour convertir un nombre binaire en nombre décimal, il suffit de multiplier la valeur de chaque bit par son poids, puis d'additionner chaque résultat. Ainsi, le nombre binaire 01101011 vaut en décimal :
27x0 | + | 26x1 | + | 25x1 | + | 24x0 | + | 23x1 | + | 22x0 | + | 21x1 | + | 20x1 | = | |
0 | + | 64 | + | 32 | + | 0 | + | 8 | + | 0 | + | 2 | + | 1 | = | 107 |
Octet (on peut trouver le symbole B pour byte qui équivaut dans ce cas à 1 octet)
L'octet est une unité d'information composée de 8 bits. Il permet par exemple de stocker un caractère, tel qu'une lettre ou un chiffre.
Le regroupement par série de huit permet une plus grande lisibilité (de même qu'en décimal on regroupe les nombres par trois).
Une unité d'information de 16 bits est appelée mot
Une unité d'information de 32 bits est appelée mot double
Pour 1 octet :
le plus petit nbre est 0 représenté par 00000000
Le plus grand nbre est 255 représenté par 11111111, soit :
27x1 | + | 26x1 | + | 25x1 | + | 24x1 | + | 23x1 | + | 22x1 | + | 21x1 | + | 20x1 | ||
128 | + | 64 | + | 32 | + | 16 | + | 8 | + | 4 | + | 2 | + | 1 | = | 255 |
Nota : comment convertir un octet dont on connaît la valeur décimale en nombre binaire
Il peut-être intéressant, pour une adresse IP ou autre, de savoir convertir en binaire un octet dont on connaît la valeur décimale.
Par exemple 83 de l'adresse IP 192.168.255.83 :
Comme vu précédemment, 1 octet est la suite de 8 bits pouvant prendre la valeur 0 ou 1 dont la valeur la plus grande est 11111111 ou 255.
Il suffit de commencer par le poids le plus lourd, donc le bit de gauche et de raisonner ainsi :
128 n'est pas contenu dans 83, donc le premier bit en partant de la gauche sera égal à 0. 0xxxxxxx
64 est contenu dans 83, donc le deuxième bit aura pour valeur 1. 01xxxxxx. Il reste 83-64=19.
32 n'est pas contenu dans 19 donc le troisième bit aura pour valeur 0. 010xxxxx.
16 est contenu dans 19, donc on aura un 1. 0101xxxx. Reste 19-16=3.
En continuant le raisonnement jusqu'au bout, 83 s'écrit 0101011 en binaire.