Saviez-vous qu'un ordinateur n'était capable de se trouver que dans deux états : allumé et éteint ?
(non, en panne n'est pas le troisième...) Et bien il en est de même pour l'ensemble de sa façon de
fonctionner, de parler, de jouer, de calculer... Le 2 est la base du tout !!! C'est d'ailleurs de ce
2 que provient le terme binaire, et nous allons en faire usage assez longuement ici.
Mais avant, replongeons-nous quelques instants à l'époque où nous avons appris à compter. La
maîtresse d'école nous a parlé de base de numération mais j'imagine que c'est depuis longtemps
dans les limbes de votre mémoire...
Nous utilisons couramment le système décimal pour représenter nos nombres, parfois sans le
savoir. Mais comment cela ? Simplement, rassurez-vous... Une base de numération permet de
représenter un nombre selon les puissances successives de cette base. Ce n'est pas clair ?
OK, alors prenons par exemple le nombre 123. La base décimale utilise les chiffres de 0 à 9.
On peut alors écrire 100 + 20 + 3 par 1x100 + 2x10 + 3x1. Et si on exprime le tout en fonction
des puissances de la base (base = 10 ici), cela donne 1x10^2 + 2x10^1 + 3x10^0 (en mathématiques,
un chiffre élevé à la puissance 0 donne 1).
Au final, un nombre est une addition de chiffres exprimés en fonction des puissances successives
de la base. Autre exemple : 405 s'écrit comme 4x10^2 + 0x10^1 + 5x10^0. Facile non ?
Pour revenir au sujet de notre exposé - la notation binaire -, il suffit d'avoir compris ce qui
précède pour comprendre ce qui suit ^_^... La différence essentielle existant entre les bases
est le nombre d'éléments utilisés pour représenter la base. Si en décimal nous avions 10 chiffres
(de 0 à 9), en binaire nous n'en avons plus que 2 : le 0 et le 1. Mais pas d'inquiétude, le principe
reste le même.
Par exemple, la valeur binaire 100 représente la valeur décimale 4. Comment ? Simplement en se
rappelant qu'une valeur s'exprime en fonction de puissances successives de la base.
Donc 100 = 1x2^2 + 0x2^1 + 0x2^0 = 4 + 0 + 0 = 4. Le passage du binaire au décimal se réalise
donc très simplement, comme vous avez pu le constater avec cet exemple.
Pour passer du décimal au binaire, on procède par divisions entières successives de la valeur
décimale avec la base recherchée (ici 2). Donc 4 en base 10 se décompose par 4 / 2 = 2 (reste 0)
puis 2 / 2 = 1 (reste 0). La valeur recherchée se lit ensuite en remontant depuis le quotient final
et en accolant les restes successifs soit, dans notre exemple, 100. CQFD !
Pour une histoire de nomenclature, les nombres s'écrivent parfois entre parenthèses avec la
valeur de la base en indice comme (100)2 qui représente 100 en binaire et est
équivalent à 4 en décimal encore noté (4)10.
En informatique, on trouve aussi souvent une notation avec une base 16 avec des valeurs de 0 à 9
et de A à F. Mais le principe est toujours le même. Par exemple, la valeur hexadécimale FF peut
sembler obscure mais s'exprime simplement comme Fx16^1 + Fx16^0. Vous me direz certainement que
l'ordinateur comprend rapidement cette donnée mais que l'être humain a plus de problème ? Mais non...
Sur une base de {0..9A..F}, F est l'équivalent de 15 donc (FF)16 = 15x16 + 15x1 = 240 + 15 = (255)10.
Pour information, les valeurs en hexadécimal peuvent être écrites de différentes manières selon
les contextes : $FF, 0xFF, (FF)16.
Allez d'autres exemples pour bien fixer le mécanisme :