Convertisseur Base Numerique
Convertissez des nombres entre les systèmes binaire (base 2), octal (base 8), décimal (base 10) et hexadécimal (base 16).
Fonctionnalites principales
- Binary/Octal/Decimal/Hex
- Live conversion
- Hex letter support
- Copy results
Guide
La conversion de base numérique est le processus qui consiste à exprimer une valeur d'un système de numération positionnel en utilisant une base différente. Les quatre bases les plus courantes en informatique et en mathématiques sont le binaire (base 2), l'octal (base 8), le décimal (base 10) et l'hexadécimal (base 16). Tout programmeur, ingénieur électricien et étudiant en informatique rencontre régulièrement ces systèmes. Ce guide explique le fonctionnement de chaque base, les méthodes de conversion entre elles et les situations pratiques où chaque base est le bon choix. Le décimal est le système que vous utilisez tous les jours. Il comporte dix chiffres : 0 à 9. Chaque position dans un nombre décimal représente une puissance de 10. Le nombre 5207 signifie 5 fois 1000, plus 2 fois 100, plus 0 fois 10, plus 7 fois 1. Ce concept de valeur positionnelle s'applique à chaque base. La seule chose qui change est le nombre de chiffres disponibles et la puissance représentée par chaque position. Le système décimal s'est très probablement développé parce que les humains ont dix doigts, ce qui fait de dix un regroupement naturel. Le binaire utilise deux chiffres : 0 et 1. Chaque position représente une puissance de 2. Le nombre binaire 1101 signifie 1 fois 8, plus 1 fois 4, plus 0 fois 2, plus 1 fois 1, ce qui égale 13 en décimal. Les ordinateurs fonctionnent en binaire parce que les circuits électroniques ont deux états stables : marche et arrêt, tension haute et tension basse. Chaque donnée que votre ordinateur traite, du texte à la vidéo en passant par les instructions logicielles, est finalement représentée comme des séquences de 1 et de 0. Les nombres binaires deviennent longs rapidement. Le nombre décimal 255 est 11111111 en binaire, huit chiffres pour ce que le décimal gère en trois. C'est pourquoi les programmeurs écrivent rarement le binaire brut pour les grandes valeurs. Ils utilisent l'octal ou l'hexadécimal comme notations abrégées qui se mappent proprement au binaire parce que 8 et 16 sont tous deux des puissances de 2. L'octal utilise huit chiffres : 0 à 7. Chaque chiffre octal correspond à exactement trois chiffres binaires. Le nombre octal 17 égale le binaire 001 111, qui est 15 en décimal. L'octal était historiquement important en informatique lorsque les systèmes utilisaient des architectures avec des tailles de mot divisibles par 3 (comme les machines 12 bits, 24 bits et 36 bits). Aujourd'hui, l'octal apparaît le plus couramment dans les permissions de fichiers Unix/Linux. La valeur de permission 755 signifie que le propriétaire peut lire, écrire et exécuter (7 = 111 en binaire), tandis que le groupe et les autres peuvent lire et exécuter mais pas écrire (5 = 101 en binaire). La commande chmod sur Linux et macOS utilise des nombres octaux pour définir les permissions de fichiers, rendant la connaissance de l'octal pertinente pour tout administrateur système ou développeur travaillant sur des systèmes Unix. L'hexadécimal utilise seize chiffres : 0 à 9 et A à F, où A représente 10, B est 11, C est 12, D est 13, E est 14 et F est 15. Chaque chiffre hexadécimal correspond à exactement quatre chiffres binaires. Cela fait de l'hex l'abréviation préférée pour les données binaires en informatique moderne. La valeur hex FF égale le binaire 1111 1111, qui est 255 en décimal. Un seul octet (8 bits) est toujours représentable par exactement deux chiffres hex, ce qui rend l'hex idéal pour afficher le contenu mémoire, les valeurs de couleur, les adresses MAC et les empreintes cryptographiques. La conversion du décimal vers n'importe quelle autre base utilise la division répétée. Pour convertir le décimal 200 en binaire, divisez 200 par 2 de manière répétée et enregistrez les restes. 200 divisé par 2 donne 100 reste 0. 100 divisé par 2 donne 50 reste 0. 50 divisé par 2 donne 25 reste 0. 25 divisé par 2 donne 12 reste 1. 12 divisé par 2 donne 6 reste 0. 6 divisé par 2 donne 3 reste 0. 3 divisé par 2 donne 1 reste 1. 1 divisé par 2 donne 0 reste 1. En lisant les restes de bas en haut, on obtient 11001000. La même méthode fonctionne pour n'importe quelle base cible. Pour convertir 200 en hex, divisez par 16 : 200 divisé par 16 donne 12 reste 8, 12 divisé par 16 donne 0 reste 12 (qui est C). La lecture de bas en haut donne C8. La conversion de n'importe quelle base vers le décimal utilise la formule de valeur positionnelle. Multipliez chaque chiffre par sa puissance positionnelle et additionnez les résultats. Pour l'hex 2F3 : 2 fois 256 (16 au carré) plus 15 fois 16 (F est 15) plus 3 fois 1 égale 512 plus 240 plus 3, ce qui fait 755 en décimal. Cette méthode fonctionne pour n'importe quelle base source. Pour le binaire 101010 : 1 fois 32 plus 0 fois 16 plus 1 fois 8 plus 0 fois 4 plus 1 fois 2 plus 0 fois 1 égale 42 en décimal. La conversion entre binaire et hex est simple parce que chaque chiffre hex correspond à exactement quatre chiffres binaires. Groupez le nombre binaire en blocs de quatre en partant de la droite, en ajoutant des zéros non significatifs si nécessaire. Le binaire 10110111 devient 1011 0111, qui est B7 en hex. Dans l'autre sens, remplacez chaque chiffre hex par son équivalent binaire de quatre bits. L'hex A3 devient 1010 0011. Cette correspondance directe explique pourquoi l'hex est si populaire dans les contextes de programmation. La conversion entre binaire et octal suit le même principe avec des groupes de trois. Le binaire 10110111 devient 010 110 111 (complété par un zéro non significatif), qui est 267 en octal. L'octal 52 devient 101 010 en binaire. Le regroupement par trois bits rend l'octal moins pratique que l'hex pour les architectures modernes à octet de 8 bits, c'est pourquoi l'hex a largement remplacé l'octal dans la plupart des contextes de programmation. La conversion entre octal et hexadécimal n'a pas de raccourci direct. L'approche standard consiste à convertir via le binaire comme étape intermédiaire. Convertissez le nombre octal en binaire (chaque chiffre octal en trois bits), puis regroupez les chiffres binaires en blocs de quatre bits et convertissez en hex. Par exemple, l'octal 375 devient le binaire 011 111 101, regroupé en 0 1111 1101, qui est l'hex FD. Passer par le binaire ajoute une étape, mais le processus est entièrement mécanique et rapide avec la pratique. Les nombres fractionnels dans différentes bases suivent la même logique positionnelle mais avec des puissances négatives. En décimal, 0,75 signifie 7 fois 0,1 plus 5 fois 0,01. En binaire, 0,11 signifie 1 fois 0,5 plus 1 fois 0,25, ce qui égale 0,75 en décimal. Tous les nombres décimaux fractionnels ne se convertissent pas en fractions binaires finies. La valeur décimale 0,1 en binaire est 0,0001100110011... se répétant à l'infini. C'est la cause racine des problèmes de précision en virgule flottante en informatique. Les langages de programmation utilisent des préfixes pour distinguer les bases numériques dans le code source. En C, Java, JavaScript, Python et de nombreux autres langages, 0b ou 0B indique le binaire (0b1101), 0o ou 0O indique l'octal (0o17), et 0x ou 0X indique l'hexadécimal (0xFF). Les nombres sans préfixe sont décimaux. Certains anciens codes C utilisent un zéro non significatif pour l'octal (017), ce qui est une source courante de bugs lorsque quelqu'un écrit 010 en s'attendant au décimal 10 mais obtient l'octal 8. Le mode strict de JavaScript et les versions modernes corrigent cela en exigeant le préfixe explicite 0o pour l'octal. Les codes couleur dans le développement web utilisent largement l'hexadécimal. La couleur CSS #3A7BFF se décompose en 3A pour le canal rouge (58 en décimal), 7B pour le vert (123) et FF pour le bleu (255). Comprendre l'hex vous permet de lire et d'ajuster directement les valeurs de couleur. Besoin d'un bleu légèrement plus foncé ? Changez FF en E0. Vous voulez convertir une valeur RGB de 128, 64, 32 en hex ? Convertissez chaque composant : 128 est 80, 64 est 40, 32 est 20, ce qui donne #804020. CSS prend également en charge les couleurs hex abrégées où chaque canal tient sur un chiffre : #F00 se développe en #FF0000 (rouge pur). Le canal alpha dans les couleurs hex à 8 chiffres (#3A7BFFCC) ajoute la transparence en utilisant la même représentation hex. Les adresses mémoire et le débogage utilisent l'hexadécimal comme représentation standard. Lorsque vous voyez une adresse mémoire comme 0x7FFF5FBFF8A0, c'est une valeur 48 bits exprimée en 12 chiffres hex. Les débogueurs, éditeurs hex et utilitaires de vidage mémoire affichent tous les données en hex parce que c'est compact, se mappe directement au binaire et s'aligne proprement avec les limites d'octets. Chaque paire de chiffres hex est un octet, ce qui facilite le comptage des octets et l'identification des limites. Un vidage hex affiche 16 octets par ligne, chaque octet étant représenté par deux chiffres hex, à côté de la représentation des caractères ASCII. Ce format est la manière standard d'inspecter les fichiers binaires, les paquets réseau et les données brutes du disque. La mise en réseau repose sur l'hexadécimal pour les adresses MAC (48 bits, affichées en six paires comme A4:C3:F0:12:34:56) et les adresses IPv6 (128 bits, affichées en huit groupes de quatre chiffres hex comme 2001:0db8:85a3:0000:0000:8a2e:0370:7334). Comprendre l'hex est essentiel pour la configuration et le dépannage réseau. Les masques de sous-réseau, lorsqu'ils sont exprimés en notation CIDR, se mappent directement aux représentations binaires qui indiquent quels bits identifient le réseau et quels bits identifient l'hôte. Les empreintes cryptographiques produisent des chaînes hexadécimales de longueur fixe. Une empreinte MD5 fait 32 chiffres hex (128 bits). Une empreinte SHA-256 fait 64 chiffres hex (256 bits). Lorsque vous vérifiez un téléchargement de fichier en comparant son empreinte à une valeur publiée, vous lisez de l'hexadécimal. Chaque caractère représente 4 bits de la sortie de hachage. Les valeurs de hachage sont affichées en hex plutôt qu'en décimal parce que l'hex est plus compact et se mappe directement à la sortie binaire de l'algorithme de hachage. Les opérations bit à bit en programmation travaillent au niveau binaire mais sont souvent exprimées en hex pour la lisibilité. Un masque de bits comme 0xFF00 est plus clair que son équivalent décimal 65280 et plus compact que sa forme binaire 1111111100000000. Les opérations AND, OR, XOR et de décalage bit à bit sont fondamentales pour la programmation de bas niveau, le développement de pilotes de périphériques, l'implémentation de protocoles et l'optimisation des performances. Comprendre la représentation binaire est un prérequis pour utiliser efficacement ces opérations. Un décalage à gauche de 1 bit double une valeur. Un décalage à droite de 1 bit la divise par deux (pour les entiers non signés). AND avec un masque extrait des bits spécifiques. OR avec un masque définit des bits spécifiques. XOR inverse des bits spécifiques. Le codage de caractères ASCII et Unicode mappe les caractères à des codes numériques couramment affichés en hex. La lettre A est 0x41 (décimal 65). Un espace est 0x20 (décimal 32). L'encodage URL utilise l'hex : %20 représente un espace, %3A représente un deux-points. Comprendre ces valeurs hex aide lors du débogage de problèmes d'encodage, de l'analyse de protocoles binaires ou du travail avec des flux de données brutes. L'encodage UTF-8 utilise des séquences d'octets de longueur variable (1 à 4 octets) où le motif binaire des bits de tête indique le nombre d'octets, ce qui rend la compréhension binaire essentielle pour comprendre l'encodage de texte au niveau de l'octet. Les entiers signés en binaire utilisent une représentation appelée complément à deux. Dans un système 8 bits en complément à deux, les valeurs vont de -128 à 127. Le bit de poids fort est le bit de signe : 0 pour positif, 1 pour négatif. Le nombre -1 est représenté par 11111111 en binaire 8 bits (0xFF en hex). Le nombre -128 est 10000000 (0x80). Pour inverser un nombre en complément à deux, inversez tous les bits et ajoutez 1. Par exemple, 5 en binaire 8 bits est 00000101. L'inversion donne 11111010. L'ajout de 1 donne 11111011, qui représente -5. Le complément à deux est le standard pour les entiers signés dans pratiquement tous les processeurs modernes. Le comprendre évite la confusion lors du débogage de l'arithmétique signée, de la lecture de vidages mémoire ou du travail avec des protocoles binaires. Les nombres en virgule flottante ont également une représentation binaire définie par la norme IEEE 754. Un float 32 bits a 1 bit de signe, 8 bits d'exposant et 23 bits de mantisse. Un double 64 bits a 1 bit de signe, 11 bits d'exposant et 52 bits de mantisse. C'est pourquoi l'arithmétique en virgule flottante peut produire des résultats surprenants. La valeur décimale 0,1 ne peut pas être représentée exactement en binaire à virgule flottante, tout comme 1/3 ne peut pas être représenté exactement en décimal. Lorsque vous voyez que 0,1 + 0,2 égale 0,30000000000000004 en JavaScript, la cause en est les limites de la représentation binaire. Les valeurs spéciales incluent l'infini positif et négatif, le zéro négatif et NaN (not a number), chacune avec des motifs de bits spécifiques. L'encodage Base64 est un autre système de numérotation largement utilisé en informatique, en particulier pour encoder des données binaires en texte ASCII imprimable. Base64 utilise 64 caractères (A-Z, a-z, 0-9, +, /) pour représenter des groupes de 6 bits de données. Il apparaît dans les pièces jointes aux e-mails (encodage MIME), les URI de données en HTML et CSS, les jetons JWT et les en-têtes d'authentification API. Tous les 3 octets de données binaires deviennent 4 caractères Base64, entraînant une augmentation de taille d'environ 33 %. Base64 n'est pas un chiffrement. C'est un encodage réversible utilisé pour la compatibilité du transport de données. Le décimal codé binaire (BCD, Binary-Coded Decimal) est un système hybride où chaque chiffre décimal est représenté par son équivalent binaire de 4 bits, mais les chiffres ne sont pas combinés en un seul nombre binaire. Le nombre décimal 42 en BCD est 0100 0010, ce qui est différent de la représentation binaire pure de 42 (101010). Le BCD est utilisé dans les calculs financiers, les horloges numériques et d'autres applications où la précision décimale est importante et où les erreurs d'arrondi en virgule flottante binaire sont inacceptables. Certains processeurs incluent des instructions arithmétiques BCD. La conversion de base numérique a des applications dans la compression de données, les codes de détection d'erreurs et l'électronique numérique. Les algorithmes de compression travaillent directement avec des données binaires. Les calculs CRC (Cyclic Redundancy Check) et de somme de contrôle opèrent sur des représentations binaires. La conception de circuits numériques utilise des portes logiques binaires et des tables de vérité. La capacité de passer couramment du décimal au binaire, à l'hex et à l'octal est une compétence fondamentale dans tous ces domaines. Les erreurs de conversion courantes incluent le mauvais comptage des valeurs positionnelles (oubli que les positions commencent à la puissance 0, pas la puissance 1), la confusion des préfixes octal et hex dans le code, l'omission des zéros non significatifs dans les octets hex (écrire A au lieu de 0A pour une valeur d'octet), et la mauvaise application des règles du complément à deux. Une autre erreur fréquente est d'effectuer l'arithmétique dans la mauvaise base, comme additionner 0x10 en s'attendant à 10 alors que le résultat est en réalité 16 en décimal. Le convertisseur de base numérique WebRecast élimine ces erreurs en gérant les conversions instantanément et en affichant le résultat dans les quatre bases simultanément. Pour la pratique manuelle, mémorisez les valeurs hex de 0 à F et leurs équivalents binaires de 4 bits. Une fois que vous pouvez convertir un chiffre hex unique en binaire et inversement sans réfléchir, les conversions plus grandes deviennent une affaire d'application de cette connaissance chiffre par chiffre. Hex 0 est 0000, 1 est 0001, 2 est 0010, 3 est 0011, 4 est 0100, 5 est 0101, 6 est 0110, 7 est 0111, 8 est 1000, 9 est 1001, A est 1010, B est 1011, C est 1100, D est 1101, E est 1110 et F est 1111. Cette table de référence à seize entrées est la chose la plus utile qu'un programmeur puisse mémoriser pour travailler avec des données de bas niveau. Les puissances de 2 méritent d'être mémorisées jusqu'à au moins 2^16 (65 536). La séquence est : 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16 384, 32 768, 65 536. Ces valeurs apparaissent constamment dans les contextes de programmation. 1024 octets est un kilo-octet (techniquement un kibioctet). 65 535 (2^16 moins 1) est la valeur maximale pour un entier non signé de 16 bits. 2 147 483 647 (2^31 moins 1) est l'entier signé 32 bits maximal. Reconnaître ces nombres vous indique immédiatement la structure binaire sous-jacente. Les tailles de données en informatique utilisent des puissances de 2 et sont exprimées en octets. Un octet est 8 bits. Un kilo-octet est 1 024 octets (2^10). Un méga-octet est 1 048 576 octets (2^20). Un giga-octet est 1 073 741 824 octets (2^30). Les fabricants de stockage utilisent souvent des puissances de 10 à la place (1 Go = 1 000 000 000 octets), c'est pourquoi un disque de 1 To affiche environ 931 Gio dans votre système d'exploitation. Les préfixes IEC (kibi, mébi, gibi) ont été introduits pour résoudre cette ambiguïté, mais l'industrie utilise toujours les deux conventions. Comprendre la base binaire des tailles de données explique pourquoi ces nombres apparaissent partout en informatique. Les codes de détection et de correction d'erreurs utilisent largement l'arithmétique binaire. Les bits de parité ajoutent un seul bit à un mot de données pour rendre le nombre total de bits à 1 soit pair (parité paire) soit impair (parité impaire). Les codes de Hamming utilisent plusieurs bits de parité à des positions qui sont des puissances de 2 (1, 2, 4, 8, 16) pour détecter et corriger les erreurs d'un bit. Les codes CRC utilisent la division polynomiale en binaire (arithmétique GF(2), où l'addition est XOR) pour générer des sommes de contrôle. Ces techniques sont fondamentales pour le stockage et la transmission fiables des données. L'algèbre de Boole, les mathématiques derrière la logique numérique, opère en binaire. Les portes AND, OR, NOT, XOR, NAND et NOR prennent des entrées binaires et produisent des sorties binaires. Les tables de vérité énumèrent toutes les combinaisons d'entrées possibles et leurs sorties. Les tables de Karnaugh et la simplification booléenne réduisent les expressions complexes à des implémentations minimales de portes. Chaque circuit numérique, d'une simple calculatrice à un processeur moderne, est construit à partir de ces portes logiques binaires. Comprendre le binaire est le point d'entrée pour comprendre le fonctionnement du matériel au niveau le plus bas. Les jeux d'instructions et le code machine sont des séquences binaires que le CPU exécute directement. Une instruction x86 comme MOV EAX, 5 est encodée en octets binaires. Le langage assembleur fournit des mnémoniques lisibles par l'humain pour ces instructions binaires. Lorsque vous compilez du code en C, Java ou tout autre langage, le compilateur produit finalement des instructions machine binaires. Visualiser le code compilé dans un éditeur hex révèle le binaire brut (affiché en octets hex) que le processeur exécute. L'informatique quantique introduit un paradigme différent avec des qubits qui peuvent exister en superpositions de 0 et 1. L'informatique binaire classique utilise des bits définis. L'informatique quantique utilise des amplitudes de probabilité. Cependant, la sortie d'un calcul quantique est mesurée comme des bits binaires classiques. L'interface entre l'informatique quantique et classique utilise toujours des bases numériques traditionnelles, et les algorithmes quantiques sont conçus et analysés en utilisant les mathématiques binaires conventionnelles. Le convertisseur de base numérique WebRecast accepte les entrées dans n'importe laquelle des quatre bases et produit la valeur équivalente dans toutes les autres. Tapez un nombre décimal et voyez ses représentations binaire, octale et hex. Collez un code couleur hex et voyez sa forme binaire. Saisissez une chaîne binaire d'une fiche technique et obtenez la valeur décimale. Les conversions se font en temps réel au fur et à mesure de votre frappe, ce qui permet d'explorer rapidement comment les valeurs se rapportent entre les bases. Utilisez-le à côté de votre éditeur de code, votre débogueur ou vos outils d'analyse de données chaque fois que vous devez passer rapidement et avec précision entre les systèmes numériques.
Questions frequentes
What bases are supported?
Binary (2), Octal (8), Decimal (10), and Hexadecimal (16).
