Convertisseur quaternaire
27 s'écrit 123 en base 4 : chaque chiffre quaternaire, de 0 à 3, contient exactement deux bits, ce qui rend la base 4 idéale pour les quatre lettres de l'ADN et les codes sur deux bits. Convertissez des entiers dans les deux sens. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Valeur
- 27
- Direction
- To quaternary
- Résultat
- 123
- Décimal
- 27
- Quaternaire
- 123
- Alphabet
- 0123
Un convertisseur quaternaire réécrit un entier non négatif entre la base 10 quotidienne et la base 4, le système positionnel à quatre chiffres dont l’alphabet est simplement zéro, un, deux et trois. Chaque chiffre en base 4 regroupe exactement deux bits, ce qui fait du quaternaire un pont naturel pour les alphabets à quatre lettres de type ADN, les canaux de pixels sur deux bits et les machines d’états compactes qui n’ont besoin que de quatre symboles. Vous choisissez la direction —décimal vers quaternaire ou quaternaire vers décimal—, collez la valeur et recevez un résultat déterministe avec l’entier décimal nettoyé, la chaîne de chiffres en base 4, le nombre de chiffres et l’alphabet fixe. Tout caractère hors de zéro à trois échoue avec une erreur d’entrée invalide claire plutôt qu’une réponse fausse silencieuse.
Comment fonctionnent l’encodage et le décodage quaternaires (base 4)
Le quaternaire est une notation positionnelle de base quatre. Chaque rang est une puissance de quatre, tout comme les rangs décimaux sont des puissances de dix : les unités valent quatre puissance zéro, le rang suivant vaut quatre, puis seize, soixante-quatre, deux cent cinquante-six, et ainsi de suite. Les quatre symboles de chiffres sont zéro, un, deux et trois — rien d’autre.
Ce tout petit alphabet est exactement ce qu’il vous faut lorsqu’une valeur tient sur deux bits : le binaire 00 se mappe sur 0, 01 sur 1, 10 sur 2 et 11 sur 3, de sorte qu’une longue chaîne de bits peut être regroupée en chiffres quaternaires sans astuces de remplissage au-delà d’un zéro initial optionnel sur une course de bits de longueur impaire.
Pour encoder un entier décimal non négatif, divisez de façon répétée par quatre et enregistrez chaque reste comme chiffre de poids faible suivant ; inversez ces restes pour obtenir la chaîne habituelle de gauche à droite, sans zéros de tête sauf pour le zéro lui-même. Pour décoder, parcourez la chaîne de gauche à droite, multipliez le total courant par quatre et ajoutez le chiffre suivant — le schéma classique de Horner.
Un préfixe optionnel 0q ou 0Q est retiré de la même façon que les outils binaires acceptent 0b, afin que les scripts marquent clairement les littéraux en base 4. Un caractère invalide tel qu’un espace, un signe plus, un chiffre quatre ou plus, une lettre ou une ponctuation interrompt avec une entrée invalide en nommant le mauvais caractère et sa position. Les valeurs doivent rester dans la plage des entiers sûrs de JavaScript pour que chaque chiffre reste exact à la sérialisation.
Les entrées négatives sont rejetées volontairement ; l’alphabet quaternaire n’a pas de chiffre de signe, et la base 4 signée est une autre convention. Si vous avez besoin de bases arbitraires de deux à trente-six, c’est une autre intention de recherche couverte par un convertisseur de radices général, et non par cette page dédiée à la base 4.
Où les convertisseurs quaternaires interviennent dans le travail réel
Les tutoriels de bio-informatique et les cours de théorie du codage présentent la base quatre parce que les quatre nucléotides de l’ADN se mappent proprement sur des codes à deux bits et donc sur des chiffres quaternaires : une carte pédagogique courante est A égal à zéro, C égal à un, G égal à deux et T égal à trois, de sorte qu’un court oligo devient une chaîne compacte en base 4 que les élèves peuvent convertir en décimal pour des démos de hachage ou des clés d’énigmes.
L’infographie et le micrologiciel embarqué empaquent parfois des données à deux bits par canal — indices de palette, drapeaux de dither ou machines d’états à quatre modes — et les ingénieurs ont besoin d’un oracle déterministe qui transforme ces chaînes de chiffres en entiers pour les tests sans réécrire divmod dans chaque langage. Les ingénieurs logiciels qui écrivent des tests unitaires pour des composants d’affichage multi-bases génèrent des chaînes base 4 attendues et affirment l’égalité aller-retour du décimal au quaternaire et inversement.
Les concepteurs de jeux inventent des runes à quatre états, des inventaires ou des systèmes de numération extraterrestres et ont besoin d’une conversion déterministe pour les outils de lore et les formats de sauvegarde. Traitez les tables générales multi-bases jusqu’à trente-six, les dumps purement binaires ou hexadécimaux et l’encodage d’octets Base64 comme des intentions de recherche distinctes avec leurs propres pages, plutôt que d’étirer ce convertisseur d’entiers quaternaires au-delà de son périmètre honnête.
Cas d’usage
Cartes pédagogiques à deux bits de type ADN
Associez les exercices A/C/G/T aux chiffres 0–3, convertissez la chaîne base 4 en décimal pour des démos de hachage et vérifiez les corrigés avec un oracle partagé.
Exercices de valeur de position en base 4 en classe
Convertissez les entiers de devoirs entre base 10 et base 4 pour que fiches et correcteurs automatiques s’accordent sur chaque reste et chaque étape de Horner.
Questions fréquentes
Quel alphabet ce convertisseur quaternaire utilise-t-il ?
Uniquement les quatre caractères 0, 1, 2 et 3. Il n’y a pas de chiffres lettres. Un préfixe optionnel 0q ou 0Q est accepté en entrée et retiré avant la conversion.
Que se passe-t-il avec un chiffre quaternaire invalide ?
Le message nomme le mauvais caractère et sa position. Seuls les chiffres 0–3 sont autorisés après un préfixe 0q optionnel ; espaces, ponctuation, lettres et chiffres 4–9 sont rejetés.
Est-ce la même chose qu’un convertisseur de radices général ou le binaire ?
Non. Les outils de radices généraux couvrent les bases 2–36 avec des chiffres lettres A–Z. Le binaire est la base 2 avec seulement 0 et 1. Cette page est dédiée à la base 4 pour l’intention de recherche de type ADN et d’empaquetage sur deux bits.
Quel est le coût ?
L’outil navigateur est gratuit et s’exécute en local.
Comment convertir un nombre décimal en base 4 à la main ?
Divisez par 4 encore et encore en notant chaque reste, toujours égal à 0, 1, 2 ou 3. Lisez les restes du dernier au premier : 27 donne 123, car 27 vaut un 16, deux 4 et trois unités.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/enc/base-quaternary \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"value":"27","direction":"to_quaternary"}'const res = await fetch("https://api.kit.forhosting.com/enc/base-quaternary", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"value": "27",
"direction": "to_quaternary"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/base-quaternary",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"value": "27",
"direction": "to_quaternary"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/base-quaternary", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"value":"27","direction":"to_quaternary"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"value":"27","direction":"to_quaternary"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/base-quaternary", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"value": "27",
"direction": "to_quaternary"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.base_quaternary",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Le tarif des appels API réussis est la base publiée de $0.002 par élément.
Comment fonctionnent l’encodage et le décodage quaternaires (base 4)
L’algorithme n’utilise que de l’arithmétique entière exacte : pas d’arrondi flottant, pas de graines aléatoires, pas d’horloges murales ni d’appels réseau, de sorte que des entrées identiques produisent toujours le même JSON.
Ce que vous envoyez et ce que vous recevez
Envoyez deux champs obligatoires : value et direction. Les valeurs décimales absolues supérieures à Number.MAX_SAFE_INTEGER sont rejetées afin que les chiffres de bas ordre ne disparaissent pas en silence. Vérifications classiques : vingt-sept s’encode en un-deux-trois en base quatre, seize en un-zéro-zéro, et décoder trois-deux-un renvoie cinquante-sept. Utilisez le formulaire gratuit du navigateur pour des contrôles rapides, puis le même contrat depuis des scripts lorsque vous avez besoin de tables en masse ou de goldens. Direction doit être to_quaternary lorsque value est un entier décimal non négatif, ou from_quaternary lorsque value est une chaîne en base 4. Des alias sont acceptés pour que formulaires et scripts utilisent les noms adaptés à leur interface : value accepte aussi n, number, input, text, decimal, quaternary et base4 ; direction accepte aussi dir, mode et op, plus de courts synonymes comme to, from, encode, decode, to_base4, from_base4, decimal_to_quaternary et quaternary_to_decimal. Pour to_quaternary, value peut être un entier JSON ou une chaîne de chiffres avec un plus initial optionnel ; fractions, notation scientifique, mots bruts, NaN, Infinity et négatifs échouent avec invalid_input et ne sont pas facturés. Pour from_quaternary, chaque caractère doit être zéro, un, deux ou trois après un préfixe 0q optionnel ; tout autre caractère — y compris quatre, cinq, soulignement, tiret et espace — échoue avec un message qui nomme le chiffre quaternaire invalide et sa position indexée à zéro. En cas de succès, la réponse renvoie la chaîne value nettoyée, la direction normalisée, decimal comme nombre, quaternary comme chaîne compacte en base 4, result comme forme convertie principale (quaternaire à l’encodage, chaîne décimale au décodage), la chaîne d’alphabet 0123, base égale à quatre et digit_count de la représentation quaternaire. Le tarif des appels API réussis est la base publiée de $0.002 par élément ; les échecs de validation ne consomment pas le solde prépayé.
Où les convertisseurs quaternaires interviennent dans le travail réel
Comme cette capacité est un moteur de parse pur, le tarif API est la base publiée de $0.002 par élément réussi et l’échec de validation ne consomme pas le solde.
Cas d'intégration
Empaquetage de pixels et d’états sur deux bits
Encodez des indices de palette ou des drapeaux à quatre modes en chaînes de chiffres quaternaires et décodez-les en entiers dans les tests unitaires et les fixtures micrologiciels.
Questions techniques
Comment choisir la direction ?
Utilisez to_quaternary lorsque value est un entier décimal non négatif et que vous voulez une chaîne en base 4. Utilisez from_quaternary lorsque value est déjà quaternaire et que vous voulez l’entier décimal en retour.