Table des matières
Usuellement nous utilisons la base dix pour représenter les nombres, principalement parce que nous avons dix doigts... et du fait du poids de l'histoire. En revanche, dans le domaine informatique, il est parfois utile de travailler avec d'autres bases de numération.
Rappel : cent quarante cinq s'écrit « 145 » en base dix, ou décimale, parce que : 145=1×102+4×10+5.
La première base de l'informatique est la base deux, ou binaire. Son intérêt est qu'écrire un nombre en binaire correspond à une série de 0 et de 1, donc naturellement à une écriture sous forme de série de bits. C'est d'ailleurs le codage habituel des entiers naturels.
Exemple :
81=64+16+1=26+24+1=1010001b
(on écrit parfois, en informatique, 0b1010001
).
Attention : cette écriture ne se lit
pas « un millions dix mille un », mais « un zéro un
zéro zéro zéro un binaire ».
Pour s'entraîner au binaire, on pourra utiliser le petit jeu en ligne diffusé par Cisco : Cisco Binary Game.
Les informaticiens utilisent aussi parfois la base huit, ou octale... (mais c'est devenu rare aujourd'hui). Elle peut s'obtenir rapidement en groupant les chiffres binaires par trois.
Exemple :
81=1×64+2×8+1=1×82+2×8+1=121o
(on écrit parfois, en informatique, 0121
,
attention).
Une autre base, la base seize ou hexadécimale, est particulièrement intéressante parce qu'elle permet d'écrire avec deux chiffres exactement les données codées sur un octet (256=16×16). Comme 16=24, chaque chiffre hexadécimal correspond à 4 chiffres binaires. Comme cette base comporte plus de dix chiffres, on complète les chiffres habituels par les premières lettres :
hexadécimal (base 16) | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
binaire (base 2) | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
décimal (base 10) | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
Exemple de conversion décimal→hexadécimal :
82=5×16+2=52h. En programmation on écrit
souvent : 0x52
.
Exemples de conversion hexadécimal→décimal : A4h=10×16+4=164, 33h=3×16+3=51, FFh=15×16+15=255.
Si l'on représente un niveau, par exemple de couleur ou de transparence, comme dans les formats d'image habituels, par un octet, donc essentiellement un nombre entre 0 et 255, chaque niveau se représente par deux chiffres hexadécimaux. Voici quelques exemples :
hexadécimal | 00 | 33 | 66 | 99 | CC | FF |
décimal | 0 | 51 | 102 | 153 | 204 | 255 |
proportion | 0 % | 20 % | 40 % | 60 % | 80 % | 100 % |