Conversion hexadécimal vers binaire : guide complet avec tableau et exemples
Apprenez à convertir l'hexadécimal en binaire avec un tableau complet 0-F, des exemples détaillés, du code de programmation et les valeurs hex courantes que tout développeur devrait connaître.
Conversion hexadécimal vers binaire : guide complet avec tableau et exemples
La conversion de l'hexadécimal vers le binaire est l'une des compétences les plus fondamentales en informatique. Que vous lisiez des dumps mémoire, inspectiez des paquets réseau, stylisiez des pages web avec des codes couleur ou déboguiez un firmware bas niveau, savoir passer aisément de l'hex au binaire est indispensable. Bonne nouvelle : c'est aussi l'une des conversions les plus faciles à apprendre, car les deux systèmes numériques ont une relation mathématique très nette.
Ce guide couvre tout ce que vous devez savoir sur la conversion hexadécimal-vers-binaire. À la fin, vous saurez convertir n'importe quelle valeur hex en binaire à la main, comprendre pourquoi la conversion fonctionne et écrire du code qui l'effectue dans quatre langages. Essayez notre convertisseur hexadécimal vers binaire gratuit pour suivre les exemples ci-dessous.
Qu'est-ce que l'hexadécimal ?
L'hexadécimal, souvent abrégé en hex, est un système numérique en base 16. Il utilise seize symboles distincts pour représenter les valeurs :
- 0-9 pour les valeurs zéro à neuf
- A-F (ou a-f) pour les valeurs dix à quinze
| Chiffre hex | Valeur décimale |
|---|---|
| 0 | 0 |
| 1 | 1 |
| 2 | 2 |
| 3 | 3 |
| 4 | 4 |
| 5 | 5 |
| 6 | 6 |
| 7 | 7 |
| 8 | 8 |
| 9 | 9 |
| A | 10 |
| B | 11 |
| C | 12 |
| D | 13 |
| E | 14 |
| F | 15 |
Pourquoi les ordinateurs utilisent l'hexadécimal
Les ordinateurs travaillent en binaire, mais les chaînes binaires sont longues et faciles à mal lire pour les humains. Le décimal est familier, mais ne s'aligne pas proprement avec le binaire. L'hexadécimal offre le meilleur des deux mondes : chaque chiffre hex représente exactement 4 bits binaires, ce qui en fait un raccourci compact et lisible pour les données binaires.
Prenez l'octet 11010110 en binaire. En décimal, il vaut 214, ce qui demande du calcul mental pour vérifier. En hex, il vaut simplement D6, deux caractères que l'on peut vérifier chiffre par chiffre avec une petite table.
Usages courants de l'hexadécimal
- Codes couleur web :
#FF5733,#3A7BD5,#000000 - Adresses mémoire :
0x7FFF5FBFF8AC - Adresses MAC :
00:1A:2B:3C:4D:5E - Points de code Unicode :
U+0041(la lettre A) - Hachages cryptographiques : SHA-256 produit 64 chiffres hex
- Langage assembleur : les opérandes de code machine sont écrites en hex
- Adresses IPv6 :
2001:0db8:85a3:0000:0000:8a2e:0370:7334
Qu'est-ce que le binaire ?
Le binaire est un système numérique en base 2 qui n'utilise que deux symboles : 0 et 1. C'est le langage fondamental de tous les ordinateurs numériques, car les circuits électroniques se construisent très fiablement autour d'une logique à deux états (activé/désactivé).
Bits, nibbles et octets
- Un bit est un seul chiffre binaire (0 ou 1).
- Un nibble contient 4 bits. Un nibble peut représenter 16 valeurs (0-15), ce qui correspond parfaitement à un chiffre hex.
- Un octet contient 8 bits (2 nibbles). Un octet peut représenter 256 valeurs (0-255), ce qui correspond exactement à deux chiffres hex (00-FF).
- Un mot varie selon l'architecture, mais il est souvent de 16, 32 ou 64 bits.
Le nibble est l'unité clé de la conversion hexadécimal-vers-binaire. Comme un chiffre hex équivaut à un nibble, convertir entre les deux systèmes est une simple substitution.
Comment convertir l'hexadécimal en binaire
La règle centrale est simple : remplacer chaque chiffre hexadécimal par son équivalent binaire sur 4 bits.
La règle de correspondance sur 4 bits
Comme 16 = 2^4, chaque chiffre hex correspond exactement à 4 bits binaires. Ce n'est pas une approximation ni un raccourci, mais une correspondance mathématique exacte. La table complète est :
| Hex | Binaire | Hex | Binaire |
|---|---|---|---|
| 0 | 0000 | 8 | 1000 |
| 1 | 0001 | 9 | 1001 |
| 2 | 0010 | A | 1010 |
| 3 | 0011 | B | 1011 |
| 4 | 0100 | C | 1100 |
| 5 | 0101 | D | 1101 |
| 6 | 0110 | E | 1110 |
| 7 | 0111 | F | 1111 |
Étape 1 : écrire le nombre hex
Retirez tout préfixe ou notation. Les préfixes courants incluent :
0x(C, Java, Python, JavaScript) :0xFFdevientFF#(codes couleur CSS) :#3A7BD5devient3A7BD5$(assembleur 6502) :$FFdevientFF- suffixe
h(assembleur Intel) :FFhdevientFF
Étape 2 : remplacer chaque chiffre hex par le binaire sur 4 bits
De gauche à droite, remplacez chaque chiffre hex avec la table ci-dessus. Utilisez toujours la représentation complète sur 4 bits, y compris les zéros en tête.
Étape 3 : combiner tous les groupes
Concaténez les groupes de 4 bits. Le résultat est la représentation binaire complète. Vous pouvez éventuellement ajouter des espaces entre les groupes de nibbles pour la lisibilité.
Tableau de conversion hexadécimal vers binaire
Voici la table de référence définitive pour convertir un chiffre hex unique en binaire, avec son équivalent décimal :
| Hex | Décimal | 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 | 1000 |
| 9 | 9 | 1001 |
| A | 10 | 1010 |
| B | 11 | 1011 |
| C | 12 | 1100 |
| D | 13 | 1101 |
| E | 14 | 1110 |
| F | 15 | 1111 |
Exemples étendus pour les valeurs à plusieurs chiffres
| Hex | Décimal | Binaire |
|---|---|---|
| 00 | 0 | 0000 0000 |
| 0F | 15 | 0000 1111 |
| 10 | 16 | 0001 0000 |
| 7F | 127 | 0111 1111 |
| 80 | 128 | 1000 0000 |
| FF | 255 | 1111 1111 |
| 100 | 256 | 0001 0000 0000 |
| FFFF | 65535 | 1111 1111 1111 1111 |
Pour toute valeur hex, vous pouvez vérifier instantanément la conversion avec notre convertisseur hexadécimal vers binaire.
Exemples détaillés
Simple : A vers binaire
Entrée hex : A
- A = 1010
Résultat : 1010 (décimal 10)
C'est la conversion la plus simple : un chiffre hex unique vers un seul nibble.
Moyen : 2F vers binaire
Entrée hex : 2F
- 2 = 0010
- F = 1111
Résultat : 0010 1111 (décimal 47)
Chaque chiffre se convertit indépendamment, puis les nibbles sont concaténés.
Complexe : DEADBEEF vers binaire
Entrée hex : DEADBEEF
C'est une célèbre valeur "hexspeak" utilisée comme nombre magique dans le débogage logiciel.
- D = 1101
- E = 1110
- A = 1010
- D = 1101
- B = 1011
- E = 1110
- E = 1110
- F = 1111
Résultat : 1101 1110 1010 1101 1011 1110 1110 1111
Cela représente 32 bits (4 octets), soit la largeur complète d'un entier 32 bits. En décimal, DEADBEEF vaut 3 735 928 559.
Codes couleur : #FF5733 vers binaire
Entrée hex : FF5733 (une couleur rouge-orangé chaude)
- F = 1111
- F = 1111
- 5 = 0101
- 7 = 0111
- 3 = 0011
- 3 = 0011
Résultat : 1111 1111 0101 0111 0011 0011
Les 24 bits se découpent en trois octets RGB :
- Rouge : 11111111 = 255
- Vert : 01010111 = 87
- Bleu : 00110011 = 51
Vous pouvez aussi explorer les valeurs de couleur hex avec notre convertisseur hex vers RGB.
Avec préfixe 0x : 0x1A3F vers binaire
Entrée hex : 0x1A3F (retirez d'abord le préfixe 0x)
- 1 = 0001
- A = 1010
- 3 = 0011
- F = 1111
Résultat : 0001 1010 0011 1111 (décimal 6 719)
Le préfixe 0x n'est qu'une convention de notation utilisée en C, Java, Python et JavaScript pour indiquer que le nombre est hexadécimal. Il n'affecte pas la conversion.
Reconvertir le binaire en hexadécimal
Le processus inverse est tout aussi direct :
- Regrouper en nibbles de 4 bits de droite à gauche. Commencez par le bit le moins significatif (le plus à droite) et formez des groupes de quatre.
- Ajouter des zéros en tête si nécessaire. Si le groupe le plus à gauche a moins de 4 bits, ajoutez des zéros à gauche.
- Remplacer chaque groupe de 4 bits par son équivalent hex.
Exemple détaillé
Entrée binaire : 110101101
Étape 1 : regrouper depuis la droite : 1 1010 1101
Étape 2 : compléter le groupe le plus à gauche : 0001 1010 1101
Étape 3 : convertir chaque groupe :
- 0001 = 1
- 1010 = A
- 1101 = D
Résultat : 1AD (décimal 429)
Hexadécimal vers binaire dans les langages de programmation
Python
La fonction int() de Python parse les chaînes hex, et bin() convertit en binaire :
# Basic conversion
hex_str = "FF"
binary_str = bin(int(hex_str, 16)) # '0b11111111'
# Clean output (no prefix, zero-padded)
clean = format(int(hex_str, 16), '08b') # '11111111'
# Color code conversion
color = "3A7BD5"
bits = format(int(color, 16), '024b') # '001110100111101111010101'
# With 4-bit grouping
grouped = ' '.join(bits[i:i+4] for i in range(0, len(bits), 4))
# '0011 1010 0111 1011 1101 0101'
JavaScript
JavaScript utilise parseInt() pour parser l'hex et .toString(2) pour la sortie binaire :
// Basic conversion
const hex = "FF";
const bin = parseInt(hex, 16).toString(2); // '11111111'
// Zero-padded to byte boundary
const padded = bin.padStart(Math.ceil(bin.length / 8) * 8, '0');
// '11111111'
// For values larger than 2^53, use BigInt
const bigHex = "DEADBEEF";
const bigBin = BigInt("0x" + bigHex).toString(2);
// '11011110101011011011111011101111'
Java
Java fournit Integer.parseInt() et Integer.toBinaryString() :
// Basic conversion
String hex = "FF";
int decimal = Integer.parseInt(hex, 16); // 255
String binary = Integer.toBinaryString(decimal); // "11111111"
// Zero-padded
String padded = String.format("%8s", binary).replace(' ', '0');
// "11111111"
// For larger values
long bigDecimal = Long.parseLong("DEADBEEF", 16);
String bigBinary = Long.toBinaryString(bigDecimal);
// "11011110101011011011111011101111"
C/C++
C et C++ utilisent strtol() ou des opérations bit à bit directes :
#include <stdio.h>
#include <stdlib.h>
// Print binary representation
void printBinary(unsigned long n, int bits) {
for (int i = bits - 1; i >= 0; i--) {
printf("%d", (n >> i) & 1);
if (i % 4 == 0 && i > 0) printf(" ");
}
printf("\n");
}
int main() {
unsigned long value = strtoul("FF", NULL, 16);
printBinary(value, 8); // 1111 1111
unsigned long color = strtoul("3A7BD5", NULL, 16);
printBinary(color, 24); // 0011 1010 0111 1011 1101 0101
return 0;
}
Valeurs hex courantes que tout développeur devrait connaître
Valeurs limites
| Hex | Binaire | Décimal | Signification |
|---|---|---|---|
| 0x00 | 0000 0000 | 0 | Octet nul, valeur minimale d'un octet |
| 0x7F | 0111 1111 | 127 | Entier signé 8 bits maximal |
| 0x80 | 1000 0000 | 128 | Minimum signé 8 bits (compl. à deux) |
| 0xFF | 1111 1111 | 255 | Maximum non signé 8 bits (1 octet) |
| 0xFFFF | 1111 1111 1111 1111 | 65 535 | Maximum non signé 16 bits |
| 0xFFFFFFFF | 1111 1111 1111 1111 1111 1111 1111 1111 | 4 294 967 295 | Maximum non signé 32 bits |
Valeurs de couleurs web
| Hex | Binaire | Couleur |
|---|---|---|
| #000000 | 0000 0000 0000 0000 0000 0000 | Noir |
| #FFFFFF | 1111 1111 1111 1111 1111 1111 | Blanc |
| #FF0000 | 1111 1111 0000 0000 0000 0000 | Rouge |
| #00FF00 | 0000 0000 1111 1111 0000 0000 | Vert |
| #0000FF | 0000 0000 0000 0000 1111 1111 | Bleu |
| #FF5733 | 1111 1111 0101 0111 0011 0011 | Orange |
| #3A7BD5 | 0011 1010 0111 1011 1101 0101 | Bleu |
Codes ASCII en hexadécimal
| Hex | Binaire | Caractère |
|---|---|---|
| 0x20 | 0010 0000 | Espace |
| 0x30 | 0011 0000 | '0' |
| 0x41 | 0100 0001 | 'A' |
| 0x61 | 0110 0001 | 'a' |
| 0x7E | 0111 1110 | '~' |
Connaître ces valeurs par cœur accélère fortement le débogage, l'inspection mémoire et la programmation bas niveau.
Foire aux questions
Comment convertir l'hexadécimal en binaire ?
Remplacez chaque chiffre hex par son équivalent binaire sur 4 bits. La correspondance est : 0=0000, 1=0001, 2=0010, ..., 9=1001, A=1010, B=1011, C=1100, D=1101, E=1110, F=1111. Par exemple, hex 2F devient 0010 1111. Cela fonctionne parce que 16 = 2^4, donc chaque chiffre hex représente exactement 4 bits binaires.
Que vaut 0xFF en binaire ?
0xFF en binaire vaut 11111111 (huit bits à 1). F en hex vaut 1111 en binaire, donc FF devient 1111 1111. Cela vaut 255 en décimal et représente la valeur maximale d'un octet non signé.
Combien de chiffres binaires un chiffre hex représente-t-il ?
Exactement 4 chiffres binaires (bits). C'est parce que l'hexadécimal est en base 16 et que 16 = 2^4. Un chiffre hex peut représenter les valeurs 0-15, soit exactement la plage de 4 bits (0000 à 1111).
Que vaut DEADBEEF en binaire ?
DEADBEEF en hex se convertit en 11011110 10101101 10111110 11101111 en binaire. Il vaut 3 735 928 559 en décimal. C'est un célèbre nombre magique "hexspeak" utilisé en débogage pour remplir la mémoire non initialisée.
Comment convertir le binaire en hex ?
Regroupez les chiffres binaires par groupes de 4 de droite à gauche, en complétant le groupe le plus à gauche avec des zéros si nécessaire. Remplacez ensuite chaque groupe de 4 bits par son équivalent hex. Par exemple, le binaire 10110010 se groupe en 1011 0010, ce qui donne B2 en hex.
Pourquoi utilise-t-on l'hexadécimal au lieu du binaire ?
L'hexadécimal est utilisé parce qu'il est beaucoup plus compact et lisible que le binaire tout en conservant une relation mathématique directe. L'octet 11010110 en binaire devient simplement D6 en hex, deux caractères au lieu de huit, sans calcul nécessaire pour convertir entre les deux.
Quelle est la différence entre hex et binaire ?
L'hexadécimal est en base 16 (chiffres 0-9 et lettres A-F), tandis que le binaire est en base 2 (seulement 0 et 1). L'hex est une représentation conviviale des données binaires : chaque chiffre hex encode exactement 4 bits. Les ordinateurs opèrent en binaire en interne, mais les développeurs utilisent l'hex comme notation pratique.
Peut-on convertir l'hex en binaire sans calculatrice ?
Oui. Une fois mémorisées les 16 correspondances (0=0000 à F=1111), vous pouvez convertir n'importe quel nombre hex en binaire à la main en quelques secondes. La conversion est une substitution un-à-un pour chaque chiffre, sans retenue, emprunt ni arithmétique.
Quel lien entre codes couleur hex et binaire ?
Un code couleur hex comme #FF5733 est une valeur binaire de 24 bits divisée en trois canaux de 8 bits : rouge (FF = 11111111 = 255), vert (57 = 01010111 = 87) et bleu (33 = 00110011 = 51). La notation hex est simplement une façon compacte de représenter les 24 bits binaires qui définissent la couleur.
Quelle est la plus grande valeur hex qui tient dans un octet ?
FF (décimal 255, binaire 11111111). Un octet contient 8 bits, et la valeur maximale de 8 bits est 11111111, soit F (1111) suivi de F (1111) en hex. C'est pourquoi les valeurs d'octet en hex vont toujours de 00 à FF.
Résumé
La conversion hexadécimal-vers-binaire est une compétence fondamentale fondée sur une seule règle : chaque chiffre hex vaut exactement 4 bits binaires. Que vous convertissiez un chiffre unique comme A (1010), un octet comme FF (11111111) ou une valeur complexe comme DEADBEEF, le processus reste la même substitution mécanique.
Points clés de ce guide :
- 16 = 2^4, donc un chiffre hex = un nibble de 4 bits
- Mémorisez la table 0-F et vous pourrez convertir instantanément n'importe quel nombre hex en binaire
- Deux chiffres hex = un octet (8 bits), ce qui fait de l'hex la notation naturelle des données orientées octets
- Les langages de programmation fournissent des fonctions intégrées :
bin(int(x, 16))en Python,parseInt(x, 16).toString(2)en JavaScript,Integer.toBinaryString(Integer.parseInt(x, 16))en Java - La conversion inverse (binaire vers hex) fonctionne en regroupant les bits en nibbles depuis la droite
Prêt à pratiquer ? Utilisez notre convertisseur hexadécimal vers binaire gratuit pour convertir instantanément n'importe quelle valeur hexadécimale en binaire, avec une décomposition étape par étape nibble par nibble et une visualisation des groupes de 4 bits.