codefordumm!ies: the cool logo

Les bits

Comme les PC sont des appareils électroniques qui fonctionnent avec des transistors, leur processeur - leur cerveau - ne comprend que le langage binaire :

Les ordinateurs, un peu bornés, ne comprennent rien d'autre que les bits.

"Pendant qu'il sommeillait, Ruth, une moabite,"

Pour faciliter la communication avec le monde extérieur et les calculs, ces bits sont regroupés en paquet de 8 :

Pour connaitre la valeur qui peut-être stocké dans ces paquets, il faut faire un tout petit peu de maths :

Avec 1 bit, on peut avoir deux valeurs 0 et 1.
Avec 2 bits, on peut avoir 00, 01, 10, 11 soit les 4 valeurs allant de 0 à 3.

"Mais comment on passe de ces groupes de 0 et de 1 à des valeurs décimales ?" me crie-t-on dans les esgourdes, et bien, c'est grâce aux puissances :

0 1 0 0 0 1 0 0
76543210
2^72^62^52^42^32^22^12^0

En partant de la droite de mon paquet de bits :

Pour trouver quel nombre représente mon paquet de bits, on multiplie ce que représente le bit comme puisance de 2 par la valeur du bit, puis on additionne les résultats :

Ainsi, pour savoir combien un octet, un word ou encore un dword peuvent stocker de valeurs, on calculera la puissance de 2 par le nombre de bits du paquet :

Enfin, bref, vous avez compris.

Le négativisme du Hobbit

Pour stocker des valeurs négatives, on utilisera la technique du complément à deux qui fait, entre autre, correspondre le bit le plus fort (le 8ème en partant de la gauche) + ou -.
Du coup, on perdra 1 bit d'information pour la valeur de notre paquet.

0 1 0 0 0 1 0 0
-/+6543210

Un octet par exemple ne pourra représenter les nombres négatifs que de -128 à 127, car on aura la valeur du nombre uniquement sur 7 octets, et 7^2 = 128.

Le complément à deux correspond à l'inverse du nombre positif (avec l'opération binaire NOT) auquel on rajoute 1 :

0 0 0 0 0 1 1 1
1 1 1 1 1 0 0 0
1 1 1 1 1 0 0 1

Et hop, on obtient -7, en binaire !