ff
Ce que ça fait
Convertit des nombres entre binaire (2), octal (8), décimal (10) et hexadécimal (16). Il repose sur BigInt, donc les valeurs de toute taille se convertissent exactement - un décimal à 300 chiffres ou un 0xffffffffffffffff sur 64 bits ne perd rien à la précision flottante (le sort des convertisseurs à plain Number au-delà de 2^53).
L’analyseur est tolérant quand cela aide : les préfixes 0x/0b/0o sont acceptés quand ils correspondent à la base source, les lettres fonctionnent dans les deux casses, les signes +/- en tête sont respectés, et les espaces autour sont retirés. Un chiffre illégal pour la base source (comme f en décimal) est rejeté avec une erreur claire au lieu d’un résultat faux. 100 % côté client.
Comment l’utiliser
- Choisissez la base source avec le contrôle segmenté de gauche (BIN / OCT / DEC / HEX).
- Choisissez la base cible avec le contrôle segmenté de droite.
- Cliquez sur le bouton swap entre les deux pour inverser le sens de conversion en un geste.
- Tapez ou collez le nombre dans Input - le résultat apparaît immédiatement dans Output.
- Cliquez sur Copy sur la sortie pour récupérer la valeur convertie.
- Lisez le panneau All bases sous le convertisseur : la valeur analysée affichée en direct dans les bases 2, 8, 10, 16, 32 et 36 à la fois, chaque ligne avec son propre bouton de copie. Il lit l’entrée dans la base source et disparaît quand l’entrée ne s’analyse pas.
- Corrigez l’entrée invalide quand l’outil la signale : un chiffre illégal pour la base source affiche « Invalid digit for base N » à la place de la sortie.
Vous pouvez aussi ouvrir l’outil prérempli via des paramètres d’URL : ?v=<value>&from=<base>&to=<base> (p. ex. /tools/number-base?v=255&from=10&to=16).
Exemples
Vérifié en exécutant convertBase() depuis src/lib/numberBase.ts (la fonction exacte que l’outil utilise) :
255 in DEC → HEX: ff
255 in DEC → BIN: 11111111
255 in DEC → OCT: 377
ff in HEX → DEC: 255 (0xff also works)
0b1010 in BIN → DEC: 10
-ff in HEX → BIN: -11111111 (sign carries through)
ff in DEC → — error: "Invalid digit for base 10"
Précision arbitraire - là où les convertisseurs à Number échouent en silence :
18446744073709551615 DEC → HEX: ffffffffffffffff (2^64 − 1, exact)
deadbeefcafebabe HEX → DEC: 16045690984503098046 (64-bit pattern, exact)
2037035976334486086268445688409378161051468393665936250636140449354381299763336706183397376
DEC → HEX: 1000000000000000000000000000000000000000000000000000000000000000000000000000
(a 79-digit decimal → 76 hex digits, digit-for-digit exact)
Bon à savoir
- Privé : la conversion s’exécute entièrement dans votre navigateur.
- Les bases se limitent à 2, 8, 10, 16 dans l’interface. L’analyseur sous-jacent gère toutes les bases de 2 à 36, mais seules ces quatre sont exposées.
- Le préfixe
0x/0b/0one se retire que s’il correspond à la base source.0b1010sous BIN vaut10; le même texte sous HEX s’analyse comme les chiffres hexadécimaux0b1010(= 725008), et0x1fsous DEC est rejeté comme chiffre invalide (xn’est pas un chiffre décimal). - Les nombres négatifs se convertissent avec leur signe ; il n’y a pas de mode complément à deux.
- Outils liés : Bitwise Calculator, Hex ↔ Text Converter, Base32 / Base58 / Base62 / Base85 Encoder