Cela vous intéressera aussi

Le système hexadécimal est un système de numération en base 16. Contrairement à la base décimale qui utilise les chiffres 0 à 9, le système hexadécimal utilise en plus les lettres de A à F, soit 16 symboles au total. Le mot « hexadécimal » commence avec le préfixe « hexa » (hex signifiant 6 en grec) et l'adjectif décimal signifie « qui procède par 10 ».

Toutes les opérations utilisées en système décimal le sont aussi avec le système hexadécimal. On peut additionner, soustraire, multiplier, etc. Exemple : A + B = 15 en hexadécimal, au lieu de 21 en décimal et 10101 en binaire. Le système hexadécimal est principalement utilisé en informatique pour traduire des valeurs binaires de manière plus lisible et plus conviviale. Historiquement, ce système n'est pas le premier en base 16 puisque les Chinois utilisaient traditionnellement un système hexadécimal pour leurs mesures.

À quoi sert le système hexadécimal ?

L'être humain utilise principalement le système décimal pour compter, mais les ordinateurs fonctionnent avec le système binairesystème binaire (système de numération qui n'utilise que 0 et 1). La conversion directe de l'un à l'autre est particulièrement compliquée. C'est pourquoi le système hexadécimal est utilisé. Comme 16 est une puissance de 2, la conversion du système binaire au système hexadécimal est simplifiée.

À chaque symbole hexadécimal correspond une valeur décimale allant de 0 à 15. © Matt Joyce, Flickr, CC by-sa 2.0
À chaque symbole hexadécimal correspond une valeur décimale allant de 0 à 15. © Matt Joyce, Flickr, CC by-sa 2.0

En effet, le nombre 16 étant supérieur à 10 et 2, un nombre exprimé dans un système hexadécimal sera plus court, permettant alors de stocker plus d'informations en utilisant moins d'espace. Par exemple, un chiffre nécessitant 24 caractères en binaire et 7 en décimal n'aura besoin que de 6 caractères en hexadécimal. Le système hexadécimal permet donc de simplifier des informations en langage binaire et d'en faciliter la lecture et l’écriture. Le système hexadécimal est notamment utilisé pour :

  • les emplacements de mémoire d'un ordinateur, en 16 ou 32 bits ;
  • la notation des couleurscouleurs sur internet sous la forme #RRVVBB (pour rouge, vert et bleu) ;
  • les clefs de sécurité WEPWEP ;
  • la norme de caractères UnicodeUnicode ;
  • les adresses MAC (Media Access Control), un identifiant physiquephysique unique à chaque ordinateur.

Comment fonctionne le système hexadécimal ?

Le système hexadécimal utilise les chiffres 0 à 9 et les lettres de A à F qui correspondent aux nombres décimaux 10 à 15. À chacun de ces symboles correspond aussi une valeur binaire de 4 0 ou 1, puisqu'il existe 16 variantes possibles d'un nombre binaire formé de 4 chiffres. Exemple : la valeur décimale de C égale 12 et sa valeur binaire est 1100.

Convertir un nombre binaire en hexadécimal

Pour convertir un nombre binaire en un nombre hexadécimal, on sépare le nombre binaire en groupe de 4 chiffres en partant de la droite. On prend ensuite la valeur hexadécimale de chacun de ces groupes. Par exemple 0111 1010 équivaut à 7A.

Voici un autre exemple ci-dessous :

Écriture décimale1763
Écriture binaire11011100011
Écriture binaire en groupes de 40110 1110 0011
Écriture hexadécimale groupée6E3

Trouver la valeur décimale d’un nombre hexadécimal

Pour passer d'un nombre hexadécimal à sa valeur décimale, on fait la somme de chaque terme multipliée par 16 à l'exposant de la position du terme dans le nombre, le terme le plus à droite correspondant à une position 0. Exemple : A2F = 10 x 16² + 2 x 16¹ + 15 x 16⁰ = 2607.

 

Le saviez-vous ?

Valeur des caractères ASCII en hexadécimal

L’ASCII (American Standard Code for Information Interchange, ou code américain normalisé pour l’échange d’information) définit la façon de coder 128 caractères en utilisant 7 bits d’un octet, tandis que le 8e bit a pour valeur 0 :

  • les numéros de 0 à 31 (ou de 00 à 1F, en hexadécimal) ne sont pas des caractères affichables à l’écran, mais des commandes ; 
  • les numéros 32 à 47 (ou 20 à 2F, en hexadécimal) sont des caractères spéciaux ;
  • les numéros 48 à 57 (ou 30 à 39, en hexadécimal) représentent les chiffres du 0 au 9 ;
  • les numéros 58 à 64 (ou 3A à 3F, en hexadécimal) sont des symboles et opérateurs mathématiques ;
  • les numéros 65 à 90 (ou 41 à 5A, en hexadécimal) sont les lettres de l’alphabet en majuscules ;
  • les numéros 91 à 96 (ou 5B à 60, en hexadécimal) sont des symboles de mise en page ;
  • les numéros 97 à 122 (ou 61 à 7A, en hexadécimal) sont les lettres de l’alphabet en minuscules ;
  • les numéros 123 à 126 (ou 7B à 7E, en hexadécimal) sont des symboles de mise en page ;
  • le numéro 127 (ou 7F, en hexadécimal) représente la commande d’effacement.

Cette codification est suffisante pour l’anglais, mais elle ne prend pas en charge les caractères spéciaux utilisés dans d’autres langues. Pour cela, le format Unicode est privilégié, car il supporte davantage les spécificités orthographiques régionales.