logo
Binaire et Héxadécimal

La base 16 : l‘hexadécimal

Les nombres binaires étant de plus en plus longs, l’utilisation de la base hexadécimale s’est imposée.

La base hexadécimale consiste à compter sur une base 16,
c'est pourquoi au-delà des 10 premiers chiffres on a décidé d'ajouter les 6 premières lettres : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F.

Un chiffre hexadécimal est représenté par 4 chiffres (bits) binaires.

Correspondance binaire Héxadécimal

Conversion binaire / hexadecimal

La conversion binaire / hexadécimale est particulièrement simple.

Convertissons 01001101 en hexadécimal.

Il suffit de regrouper les bits par quatre (en commençant depuis la droite): 0100 1101

Correspondance binaire Héxadécimal

Conversion hexadecimal / binaire

La encore le principe est assez simple. On remplace chaque chiffre héxa par le quartet correspondant.

Conversion hexadecimal / decimal

Prenons un nombre : 4F2C.

Il a 4 rangs : chaque rang est une puissance de 16 : pour convertir, on multiplie le premier rang (en partant de la droite) par 160, le second par 161, etc. Ainsi on obtient : 4F2C = 4×163 + F×162 + 2×161 + C×160

On remplace chaque lettre héxa par son rang : A par 10, B par 11,etc

4F2C = 4×163 + 15×162 + 2×161 + 12×160 4F2C = 4×4096 + 15×256 + 2×16 + 12×1 4F2C hex = 20 268 dec.

Conversion decimal / hexadecimal

La conversion d'un nombre de base 10 en base 16 est similaire à la conversion décimal vers binaire.

Pour le binaire il fallait décomposer en puissances de 2, ici on décompose en puissances de 16.

Pour l'exemple, je prendrais le nombre 1680. Il faut donc commencer par le décomposer en puissances de 16 :

1680 = 6×256 + 9×16 + 0×1

1680 = 6×162 + 9×161 + 0×160.

La conversion en hexadécimal de 1680 est donc 690 (lire “six-neuf-zéro”).

A noter que l'on peut également utiliser la méthode des divisions successives par 16.


Dump mémoire

Le terme Dump vient du verble to dump qui signifie vider, décharger le contenu du fichier sur l'écran de l'ordinateur.

La représentation hexadécimale est souvent utilisée pour représenter le contenu d'un fichier, de la mémoire,...

En effet,dans cette base 16, la valeur d'un octet peut-être représenter par une taille fixe de 2 symboles hexa de 00 à FF.

Ce qui permet d'avoir des tailles de colonnes fixes sur 2 caractères et donc d'aligner facilement les valeurs.

L’image ci-dessous présente un dump de la mémoire d’un ordinateur.

La colonne de gauche indique l’adresse de la mémoire, et la partie droite son contenu sous forme hexadécimale.

dump mémoire hexadécimal

Pour aller plus loin :

  1. Numération binaire et curiosité.
  2. Historique