Les nombres hexadécimaux, souvent abrégés en « nombres hex » ou « hex », sont des nombres représentés en base 16 par opposition à la base 10 que nous utilisons pour l’arithmétique et le comptage de tous les jours.
En termes pratiques, cela signifie que chaque colonne d’un nombre écrit en hexadécimal peut représenter jusqu’à 16 valeurs.
En programmation, nous préfixons les constantes hexadécimales par 0x
, à quelques exceptions près.
Exemples et explication
0x1 == 10xF == 150xFF == 2550xFFF == 40950x1000 == 4096
Dans le système standard de base 10, chaque colonne représente des puissances croissantes de 10, tandis qu’en base 16, chaque colonne représente des puissances croissantes de 16.
Comme on le voit dans l’exemple de tableau ci-dessus, avec un chiffre hexadécimal, nous pouvons représenter des nombres jusqu’à 15 inclus. Ajoutez une autre colonne et nous pouvons représenter des nombres jusqu’à 255, 4095 avec une autre colonne, et ainsi de suite.
Utilisations de l’hexadécimal dans la programmation de bas niveau
L’hexadécimal a d’abord trouvé son utilisation en informatique comme une fonctionnalité de commodité.
Les données dans nos ordinateurs ont une unité de stockage commune la plus basse, l’octet. Chaque octet contient 8 bits, et est capable de stocker un nombre compris entre 0 et 255 inclus.
L’hexadécimal a l’avantage d’être laconique et d’avoir des limites bien définies.
Un seul octet est toujours représenté par deux chiffres hexadécimaux de 0x00 à 0xFF, ce dernier étant la plus grande valeur par octet de 255.
La laconicité et la nature alignée sur les octets des nombres hexadécimaux en font un choix populaire pour les ingénieurs logiciels travaillant sur des bases de code de bas niveau ou des logiciels embarqués.
Utilisations des nombres hexadécimaux en JavaScript
JavaScript prend en charge l’utilisation de la notation hexadécimale à la place de tout nombre entier, mais pas des décimales.
À titre d’exemple, le nombre 2514 en hexadécimal est 0x9D2, mais il n’y a pas de moyen pris en charge par le langage pour représenter 25.14 comme un nombre hexadécimal.
L’utilisation de l’hexadécimal dans votre code est un choix personnel et stylistique, et n’a aucun effet sur la logique sous-jacente que votre code met en œuvre.
Utilisations des nombres hexadécimaux en CSS
Le CSS utilise depuis longtemps la notation hexadécimale pour représenter les valeurs de couleur. Considérons le sélecteur suivant :
.my-container { background-color: #112233; color: #FFFFFF;}
La valeur de background-color
est en fait trois octets hexadécimaux.
Le processeur CSS les traite comme trois octets individuels, représentant le Rouge, le Vert et le Bleu.
Dans notre exemple, 11 correspond à la composante de couleur Rouge, 22 correspond à la composante de couleur Verte, et 33 à la composante de couleur Bleue.
Il n’y a actuellement aucun moyen à partir de CSS3 de définir une couleur avec une composante alpha en utilisant l’hexadécimal. La proposition CSS4 Draft1 comprend une proposition visant à autoriser un octet supplémentaire pour spécifier les valeurs alpha.
Pour l’instant, l’utilisation de la fonction standard rgba()
est le moyen recommandé pour ajouter une valeur alpha à vos couleurs.