Convertisseur de base / radix
ConversionConvertit des entiers entre les bases 2 à 62 avec BigInt, sans perte de précision même pour les très grands nombres.
- Décimal
Sur cette page
Qu’est-ce qu’un convertisseur de base (radix) ?#
Tout entier représente le même nombre ; seule son orthographe change avec la base. 255 en décimal, ff en hexadécimal, 11111111 en binaire et 377 en octal sont quatre chaînes pour la même quantité exacte. Un convertisseur de base traduit une orthographe en une autre — et s’il mérite d’exister comme véritable outil plutôt qu’un simple parseInt, c’est parce que le Number de JavaScript perd silencieusement sa précision au-delà de 2^53 (environ 16 chiffres décimaux) : convertir un identifiant 64 bits comme 18446744073709551616 avec un Number ordinaire vous renvoie un nombre différent, sans avertissement.
Cette page est fondée sur BigInt de bout en bout, si bien qu’un entier de taille arbitraire conserve sa pleine précision à chaque conversion. Elle gère les bases 2 à 62, avec l’alphabet canonique de chiffres 0-9, puis a-z, puis A-Z. Par commodité, les bases 2 à 36 sont insensibles à la casse (vous pouvez saisir FF pour l’hexa 255), tandis que les bases 37 à 62 sont sensibles à la casse — car en base 62, le a minuscule et le A majuscule sont deux chiffres véritablement distincts (10 et 36).
Comment l’utiliser#
- Saisissez la Valeur à convertir. La page démarre sur
255. - Réglez Base source sur la base dans laquelle votre valeur est actuellement écrite (les listes déroulantes proposent 2 à 62 ; par défaut 10, décimal).
- Réglez Base cible sur la base voulue (par défaut 16, hexadécimal). La flèche entre les deux n’est qu’un repère visuel.
- Le champ Sortie affiche l’orthographe convertie en direct, et la ligne Décimal en dessous montre la même valeur en base 10 — un contrôle de cohérence bien pratique quand vous convertissez entre deux bases peu familières.
- Exemple recharge la valeur par défaut, Effacer vide le champ. Un chiffre invalide pour la base choisie est signalé dans la ligne d’état (saisir
8en base 8, ougen base 16, ne produira pas silencieusement n’importe quoi).
Fonctionnalités clés#
- Précision BigInt. La conversion s’opère sur des entiers à précision arbitraire, donc
2^64et au-delà font des allers-retours exacts. Pas de falaise à 2^53, pas d’approximation à virgule flottante. - Bases 2 à 62. Couvre binaire, octal, décimal, hexa, base32, base36, alphabets de type base58 et la base62 complète — la plage que les systèmes réels utilisent vraiment.
- Analyse sensible à la casse. Les bases 2 à 36 acceptent toute casse par commodité ; les bases 37 à 62 traitent la casse comme significative, afin que
aetArestent des chiffres distincts, conformément à l’alphabet canonique à 62 symboles. - Tolérance aux tirets bas de regroupement. Vous pouvez coller
1_000et il sera lu comme1000— la même convention qu’emploient beaucoup de langages de programmation pour la lisibilité. - Gestion du signe. Les valeurs négatives se convertissent correctement ; le signe moins est préservé à travers toutes les bases.
Exemple commenté#
Avec la valeur par défaut 255, Base source 10, Base cible 16, le panneau affiche :
Output: ff
Decimal: 255
Basculez la Base cible sur 2 et vous obtenez 11111111 — huit bits, la valeur qui tient dans exactement un octet, ce qui explique pourquoi ff est une vue si familière dans les codes couleur et les vidages de mémoire.
La vraie raison d’être de BigInt apparaît avec une valeur 64 bits. Saisissez 18446744073709551616 (c’est-à-dire 2^64), Base source 10, Base cible 16 :
Output: 10000000000000000
Decimal: 18446744073709551616
Soit 1 suivi de seize zéros — exactement 2^64 en hexa. Un convertisseur bâti sur le Number de JavaScript aurait arrondi l’entrée à 18446744073709552000 avant même de commencer, et vous ne l’auriez jamais remarqué. Faites l’aller-retour inverse avec Base source 16 / Base cible 10 et le décimal d’origine revient inchangé : c’est le test qui prouve qu’aucune précision n’a été perdue.
FAQ#
Pourquoi FF fonctionne en hexa mais pas en base 62 ?#
Les bases 2 à 36 partagent une seule gamme de lettres (a–z, mappées à 10–35), donc la casse n’a pas d’importance et FF = ff = 255. À partir de la base 37, l’alphabet a besoin de plus de 26 lettres et s’étend donc aux majuscules : a=10, b=11 … z=35, A=36, B=37 … Z=61. Une fois les deux casses en jeu, a et A sont des chiffres différents, donc l’analyseur doit préserver la casse.
Que se passe-t-il si je saisis un chiffre invalide pour la base ?#
Vous obtenez une erreur claire, pas une réponse fausse. Saisir 8 ou 9 avec Base source réglée sur 8 (octal), ou g avec Base source réglée sur 16 (hexa), est rejeté parce que ces caractères ne sont pas des chiffres légaux dans cette base. La ligne d’état vous indique le caractère fautif.
Pourquoi l’outil affiche-t-il une ligne Décimal alors que je convertis vers une autre base ?#
Parce que le décimal est la base dans laquelle les humains raisonnent, donc c’est le contrôle de cohérence naturel. Si vous convertissez le q de base 58 vers la base 16 et obtenez 1a, la ligne Décimal (26) vous permet de confirmer « oui, le symbole autour du 58e rang désignait bien vingt-six » sans faire l’arithmétique vous-même.
Gère-t-il les nombres fractionnaires comme 3.14 ?#
Non — ce convertisseur ne fonctionne que sur des entiers. La conversion de base d’une partie fractionnaire est un problème différent (elle produit des développements infiniment périodiques dans la plupart des bases, comme le fait 1/3 en décimal), et la tronquer silencieusement serait trompeur. Pour des valeurs entières de toute taille, la conversion est exacte et instantanée.