Compter est la chose la plus simple que l'on puisse apprendre à l'école. On est tous passé par la, des jetons rouges et verts, puis on lance un dé. En fonction du nombre tiré par le dé, on récupère autant de jetons rouges. Arrivé à dix jetons rouges, on les échange contre un vert. Une autre manière de faire est de compter sur ses doigts. On tient ses poings fermés vers soit, puis on compte en ouvrant successivement ses doigts. Dès qu'ils sont tous ouvert on est donc arrivé à dix (et oui on n'est pas des tortus ninjas) et on referme tous les doigts et on continue.
L'homme a donc fixé une barrière à partir de laquelle on ajoute un chiffre puis on recommence. L'homme a fixé à dix ce chiffre, sans doute parque l'on à dix doigts. Maintenant, imaginons que les tortues ninjas (qui ont trois doigts par main, soit six doigts (elles n'ont que deux mains)) se mettent à compter, elles compteraient de la manière suivante: 0, 1, 2, 3, 4, 5, 6, 10, 11, 12, 13, 14, 15, 16, 20, etc... Elles ne connaitraient ni le 7, ni le 8 et ni le 9, le sodoku serait d'ailleurs plus simple pour elles.
Un ordinateur est encore plus primitif, il ne compte qu'avec un seul doigt, soit il l'ouvre soit il le ferme. D'ou le terme binaire, ou encore l'algèbre de Boole, le vrai et le faux, le tout et le rien, le oui ou le non, le blanc et le noir, bref tout ce dont vous voudrez qui désigne deux états distincts.
Pourquoi deux états pour un ordinateur? Pourquoi pas 10 états comme chez les humains?
En électronique il est facile de discriminer deux états en mesurant des tensions 0 ou 5 volts, +12 ou -12 volts, +5 ou -5 volts. D'autre part le passage d'un état à un autre sans ambigüité, or si on avait 10 états 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9 volts le passage de 9 volts à 0 volt implique un passage par les voltages 8, 7, 6, 5, 4, 3, 2, 1, il est donc impossible de savoir à un moment donné ou en est l'ordinateur dans ses comptes.
Pour compter un ordinateur procède de la manière suivante. Supposons que l'ordinateur ne sache compter que sur 8 bits maximum (tout comme un enfant qui ne sait que compter jusqu'a 100). L'ordinateur réserve 8 cases dans lesquelles il pourra faire varier le potentiel électrique entre 0 ou 5 volts (les valeurs sont arbitraires). On représentera les cases à 0 volt par des 0 et les cases à 5 volts par des 1.
L’ordinateur codera un zéro de la manière suivante :
0000 0000
Un un :
0000 0001 (la dernière case à 5 volts)
Un deux :
0000 0010 (l’avant dernière case à 5 volts)
Un trois :
0000 0011 (les deux dernières cases à 5 volts)
On vient d’inventer le binaire manipulable sans problème par la machine. Le problème est comment le décoder rapidement ?
Voici une méthode :
On numérote chaque case avec en prenant le double du numéro de la case à sa droite. En sachant que la case la plus à droite est la case numéro 1.
On a le schéma suivant pour notre ordinateur:
128 64 32 16 8 4 2 1
0 0 0 0 0 0 0 0
Pour avoir la valeur du code binaire on additionne tous les numéros de cases qui sont à 5 volts. Exemple :
0010 1010
On numérote les cases :
128 64 32 16 8 4 2 1
0 0 1 0 1 0 1 0
Puis on additionne : 32 + 8 + 2 = 42. Donc 0010 1010 en binaire est en fait 42.
Pour passer du décimal au binaire, on cherche le numéro de case le plus grand mais que ne dépasse pas notre nombre. On met cette case à 5 volts et on soustrait au nombre le numéro de la case. On répète l’opération jusqu’à arriver à zéro. Exemple :
Convertissons 42 en binaire :
128 64 32 16 8 4 2 1
0 0 0 0 0 0 0 0
32 est la plus grande case inférieur à 42, donc on passe 32 à 5 volts et on soustrait 32 de 42 donc 10 :
128 64 32 16 8 4 2 1
0 0 1 0 0 0 0 0
On recommence avec 10. 8 est la bonne case, il reste 2
128 64 32 16 8 4 2 1
0 0 1 0 1 0 0 0
Enfin 2 correspond à la case deux et la différence est égal à zéro, on a fini.
128 64 32 16 8 4 2 1
0 0 1 0 1 0 1 0
L’ordinateur sait donc représenter les nombres par des potentiels électriques, mais comment fait-il les calculs entre les nombre binaires ?
Cette question sans doute traité en profondeur dans un autre article, mais brièvement on peut dire que le processeur est câblé pour manipuler une telle représentation des nombres. Il sait additionner, soustraire, multiplier, diviser, approcher des fonctions mathématiques grâce notamment aux développements limités et à la méthode de Héron.
Bref il sait compter mieux que nous et c’est pour cette raison qu’il a entièrement sa place en entreprise comme à la maison.
Moralité : si vous voulez avoir votre place à la maison et au boulot apprenez à compter (hein YJD ?)
| Août 2008 | ||||||||||
| L | M | M | J | V | S | D | ||||
| 1 | 2 | 3 | ||||||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 | ||||
| 11 | 12 | 13 | 14 | 15 | 16 | 17 | ||||
| 18 | 19 | 20 | 21 | 22 | 23 | 24 | ||||
| 25 | 26 | 27 | 28 | 29 | 30 | 31 | ||||
|
||||||||||