2017 08 binary 2326145 pixabay
Un outil informatique ne comprendra jamais ce que veut dire, par exemple, le nombre 247. Parce que 247 est un nombre en base décimale, alors que lui ne comprend que les nombres exprimés en binaire, avec des 0 et des 1.
Mais que veut dire au juste une "base" ?
Et comment traduire 247 en base binaire ?
Mode d'emploi !
 
 
Nous, humains, utilisons la base 10

2017 08 pay 2446663 pixabayNous en avons tellement l'habitude que nous n'y pensons plus vraiment, mais nous réflechissons en base 10.

Celà veut dire que nous utilisons 10 chifres différents :
de 1 à 9, plus le zéro (0).

Chaque nombre se décompose ensuite en unités, dizaines, centaines, milliers, ....

Si on veut "décortiquer" ainsi notre "247", par exemple, on peut donc dire que 247, c'est 2 centaines + 4 dizaines + 7 unités :
247 = 2 x 100 + 4 x 10 + 7 x 1.

De même, un nombre plus grand comme 4792 se décortique en 4 milliers + 7 centaines + 9 dizaines + 2 unités:

4792 = 4 x 1000 + 7 x 100 + 9 x 10 + 2 x 1.

La clé de la base décimale est cette décomposition en unités / dizaines / centaines / milliers / ...
mais pour celà, il faut 10 chiffres (de 0 à 9) parce qu'une dizaine vaut 10 unités, une centaine vaut 10 dizaines dont 100 unités, etc...


La base 2 des ordinateurs et autres dispositifs électroniques

En informatique, impossible d'aller jusque 10, on s'arrête à 1 : les seuls chiffres disponibles sont 0 et 1.

Et du coup, à la place de raisonner en "unités puis puissances de 10", on raisonne en "unités puis puissances de 2".

Voyons ça pas à pas...

 "Traduire" 0 et 1

Les deux premiers nombres en base binaire sont donc 0 et 1.

2017 08 lottery 2154610 pixabayMais comment "fabriquer" un 2 ?

Il faut d'abord comprendre que 0 et 1 peuvent en fait s'écrire comme multiples de 20 (ce qui vaut 1) :

0 = 0 x 1 = 0 x 20
1 = 1 x 1 = 1 x 20

Pour arriver à compter jusque 2, il faut utiliser le "cran" suivant dans les exposants, donc 21, qui vaut 2 !
Et on décompose 2 en multiples de 2 et de 1 :
On écrira donc :
2 = 1 x 2 + 0 x 1= 1 x 21 + 0 x 20

Pour aller jusqu'au 3, on continue à décomposer :
3 = 1 x 2 + 1 x 11 x 21 + 1 x 20

On continue...

Pour aller jusque 4, il va à nouveau falloir aller au cran suivant et utiliser 22 qui vaut 4.

Maintenant, il faut décomposer en multiples de 4, de 2 et de 1.
On écrira donc que
4 = 1 x 4 + 0 x 2 + 0x 1122 + 0 x 21 + 0 x 20
Et de même :
5 = 1 x 4 + 0 x 2 + 1 x 1 = 122 + 0 x 21 + 1 x 20
6 = 1 x 4 + 1 x 2 + 0 x 1 = 122 + 1 x 21 + 0 x 20
7 = 1 x 4 + 1 x 2 + 1 x 1 = 122 + 1 x 21 + 1 x 20

Petite pause

Mettons ces premiers chiffres dans un tableau indiquant combien de multiples de 4, 2 et 1 il a fallu pour chacun :

 nombre
(en base décimale)
  4 = 22
2 = 21
1 = 20
0 0 x 22 + 0 x 21 + 0 x 20 0 0 0
1 0 x 22 + 0 x 21 + 1 x 20 0 0 1
2 0 x 22 + 1 x 21 + 0 x 20 0 1 0
3 0 x 22 + 1 x 21 + 1 x 20 0 1 1
4 1 x 22 + 0 x 21 + 0 x 20 1 0 0
5  1 x 22 + 0 x 21 + 1 x 20 1 0 1
6 1 x 22 + 1 x 21 + 0 x 20 1 1 0
7 1 x 22 + 1 x 21 + 1 x 20 1 1 1

Ce que nous venons de faire est une traduction pour ordinateur des nombres (décimaux) de 0 à 7 :

0 se traduit par 000
1 par 001
2 par 010
etc...

Notation et vocabulaire
Pour être plus clair, il vaut mieux préciser dans quelle base on s'exprime.
On écrit donc souvent (nombre)10 pour dire qu'on s'exprime un nombre en base décimale et (nombre)2 quand c'est sa tradution binaire.
Juste au dessus, on a vu par exemple que (7)10 = (111)2
Quand on utilise cette écriture binaire pour l'informatique, chaque 1 s'appelle un bit (un raccourci de l'anglais binary digit qui veut dire nombre binaire)

Pour aller jusque 7, on n'a eu besoin de décomposer qu'avec des 4 (22), des 2 (21) et des 1 (20).
On pourrait donc le traduire en 3 bits : 111..

 

Et au-delà de 7 ? 

Pour traduire des nombres plus grands, on continue sur le même principe, mais en utilsant des puissances de plus en plus grandes que 22 , 21 et  20 : on va appeler à la rescousse
23 qui vaut 8,
puis 24 qui vaut 16
puis 25 qui vaut 32,
puis 26 qui vaut 64,
puis 27 qui vaut 128, etc...

 On ne décomposera donc un nombre en multiples de 1, 2 et 4 mais en multiples de 1, 2, 4, 8, 16, 32, 64 et 128.

En informatique, il faut "avertir avant" l'ordinateur de quelle taille sont les objets qu'on lui donne à traiter.
Et en général, même pour les petits nombres comme 5 ou 7, on travaille avec tous ces multiples.
Cela donne alors pour chaque nombre décimal une traduction en 8 bits, c'est ce que l'on appelle un octet !
Pour un ordinateur, 7 ne s'écrira donc pas simplement 111 mais toujours avec 8 bits : 00000111.

Transformons un grand nombre décimal en binaire...

2017 08 calculator 2359760 pixabayComment s'écrit par exemple 77 sous forme d'octets, en binaire ?
Rappelons-nous que l'on a 8 "blocs" disponibles pour le décomposer :
1, 2, 4, 8, 16, 32, 64 et 128.

128 ne nous servira pas, il est trop grand.
Par contre 64 est plus petit que 77.
On va donc dire que 77, c'est 64 plus "quelque chose" :
77 = 64 + "13".

Mais il faut maintenant décomposer 13.
Là, 16 et 32 sont trop grands mais 8 est inférieur à 13.
On écrit donc : 77 = 64 + 8 + 5.

Puis on décompose 5 (comme on l'a fait tout à l'heure). Et finalement : 77 = 64 + 8 + 4 + 1.

Si on en revient à toutes les composantes possibles : 77 = 0 x 128 + 1 x 64 + 0 x 32 + 0 x 16 + 1 x 8 + 1 x 4 + 0 x 2 + 1 x 1.

Et donc : (77)10 = (01001101)2

Facile, non ?

 

 

Auteur du site

id_vero_2008_50x59.jpgVéronique Parasote
Docteur en physique
Journaliste scientifique

pourquoi ce site ?
 CV en ligne
vero [a] archi7.net

J'ai une question !

bonom_petit.gifVous avez une question... et Archi7 n'y a pas encore répondu ? Ecrivez-lui !

mail-147401-pixabay.png

N'hésitez pas à poser des questions : aucune question n'est "bête" !

Conseils de lecture

Mars, Planète rouge
Révolutions animales, comment les animaux sont devenus intelligents
À la découverte des plantes sauvages utiles
Ces animaux qui font l’Histoire, 50 animaux célèbres

(réservé à l'auteur)

JSN Metro template designed by JoomlaShine.com