La numération en base 2 est appelée la numération binaire
Les seuls symboles utilisés sont donc 0 et 1.
20 | 1 |
21 | 2 |
22 | 4 |
23 | 8 |
24 | 16 |
25 | 32 |
26 | 64 |
27 | 128 |
28 | 256 |
29 | 512 |
210 | 1024 |
Rappel : n- p = 1/ np
20 | 1 |
2-1 | 0,5 |
2-2 | 0,25 |
2-3 | 0,125 |
2-4 | 0,0625 |
___
1024 | 512 | 256 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 | 0,5 | 0,25 | 0,125 | valeur |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 73 | ||||
1 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 460 | ||
1 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 0 | 777,75 | |
1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 1431,625 |
suite : suite donnée de 0 et
cumul = 0
pour i = 1 à longueur(suite)
cumul = 2.cumul + suite[i]
répéter
résultat = cumul
on se donne la suite = 11010110
longueur(suite) = 8, i va donc prendre successivent les valeurs 1 à 8 suite[i] désigne le ième chiffre (0 ou 1) de la suite. initialement le cumul vaut 0
i | suite[i] | cumul |
---|---|---|
0 | ||
1 | 1 | 1 |
2 | 1 | 3 |
3 | 0 | 6 |
4 | 1 | 13 |
5 | 0 | 26 |
6 | 1 | 53 |
7 | 1 | 107 |
8 | 0 | 214 |
11010110 = 1.27+ 1.26+ 0.25+ 1.24+ 0.23+ 1.22+ 1.21+ 0.20 = 128 + 64 + 0 + 16 + 0 + 4 + 2 + 0 = 214
On divise le nombre 125 par deux autant qu'il est possible, les restes successifs étant les poids binaires obtenus dans l'ordre des puissances croissantes.
125 | : | 2 | = | 62 | reste | 1 |
62 | : | 2 | = | 31 | reste | 01 |
31 | : | 2 | = | 15 | reste | 101 |
15 | : | 2 | = | 7 | reste | 1101 |
7 | : | 2 | = | 3 | reste | 11101 |
3 | : | 2 | = | 1 | reste | 111101 |
1 | : | 2 | = | 0 | reste | 1111101 |
0 | : | 2 | = | 0 | reste | 01111101 |
N0 = nombre à convertir restes 0 = "" Répéter tant que N i > 0 N i+1=Ni/2 restes i+1 = (N i mod 2) & restes i résultat restes final
"mod" calcule le reste de la division et "/" effectue la division entiúre.
Convertir(N) si (N = 0) alors 0 sinon Convertir(N/2) & (N mod 2)
_
La base 16 nécessite l'utilisation de 15 symboles. On a choisi conventionnellement : 0 1 2 3 4 5 6 7 8 9 A B C D E F
décimal | hexa | binaire |
---|---|---|
0 | 0 | 0000 |
1 | 1 | 0001 |
2 | 2 | 0010 |
3 | 3 | 0011 |
4 | 4 | 0100 |
5 | 5 | 0101 |
6 | 6 | 0110 |
7 | 7 | 0111 |
8 | 8 | 0111 |
9 | 9 | 1000 |
10 | A | 1010 |
11 | B | 1011 |
12 | C | 1100 |
13 | D | 1101 |
14 | E | 1110 |
15 | F | 1111 |
On utilise la définition de l'écriture d'un nombre dans une base de numération. Pour le calcul on remplace les digits hexadécimaux A B C D E et F par leur équivalent décimal 1F4base16 = 1.162 + F.161 + 4.160 = 256 + 15.16 + 4 = 500 FACbase16 = F.256 + A.16 + C = 15.256 + 10.16 + 12 = 4012
On regroupe les digits binaires par quatre en partant du bit de poids le plus faible. Chaque groupe de quatre digits peut tre lu comme une valeur comprise entre 0 et 15. On remplace ainsi chaque groupe de quatre bits par un symbole hexadécimal associé š la valeur de ces quatre bits. Réciproquement il suffit de remplacer chaque digit d'un nombre écrit en base 16 par sa valeur écrite en binaire sur quatre bits.
0100 | 1001 | 1111 | 1010 | 0100100111111010 |
4 | 9 | F | A | 49FA |
Le passage de l'hexadécimal au binaire et réciproquement est trivial. Cela tient au fait que 16 = 24 (d'o¶ la procédure de regroupement par 4). Par ailleurs l'hexadécimal étant quatre fois plus concis que le binaire cette bas a été largement privilégiée par les informaticiens.