Encodeur Baudot ITA2
« HI » devient 10100 00110 en Baudot–Murray ITA2, le code à cinq bits des téléimprimeurs du télex et du radiotélétype, avec les décalages lettres et chiffres insérés automatiquement et la liste des symboles qu'ITA2 ne sait pas transmettre. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- HI
- Mode de calcul
- Encode
- Résultat
- 10100 00110
- Encodage
- baudot-ita2
- Codes
- 20, 6
- Nombre de codes
- 2
Le code Baudot–Murray, normalisé sous le nom d’Alphabet télégraphique international n° 2 (ITA2 ou CCITT-2), est l’alphabet de téléimprimeur à cinq bits qui a transporté le fil de presse, le Telex et la radiotélétype pendant une grande partie du XXe siècle. Contrairement au Morse, chaque caractère occupe un cadre fixe de cinq bits, et le même numéro de code désigne une lettre ou une figure selon que le flux a sélectionné en dernier le décalage lettres (LTRS) ou figures (FIGS). Les étudiants en histoire du codage, les radioamateurs qui restaurent du matériel RTTY, les résolveurs de CTF et les outils de documentation ont besoin d’un convertisseur déterministe qui insère correctement ces décalages, mappe A–Z et le jeu classique de figures, et signale tout caractère que l’ITA2 ne peut pas représenter. Cette capacité encode le texte brut en groupes de cinq bits séparés par des espaces, décode des flux de jetons binaires, décimaux ou hexadécimaux vers le texte, et dresse la liste des glyphes non mappés afin que vous ne perdiez pas un symbole en silence.
Ce qu’est le Baudot–Murray ITA2 et comment fonctionnent les décalages lettres et figures
L’ITA2 est un jeu de caractères à cinq bits offrant trente-deux valeurs possibles. Cinq d’entre elles sont des commandes ou des décalages partagés, non des glyphes imprimables : NULL (blanc), saut de ligne, retour chariot, FIGS (passer en figures) et LTRS (passer en lettres). Les codes restants s’interprètent selon le cas actif.
En cas lettres vous obtenez A–Z et l’espace ; en cas figures, les mêmes codes numériques produisent chiffres et ponctuation tels que 3, -, ', 8, 7, 4, virgule, point d’exclamation, deux-points, parenthèses, 5, plus, 2, dièse (ou la cellule livre sterling), 6, 0, 1, 9, point d’interrogation, esperluette, point, barre oblique et point-virgule. Les téléimprimeurs démarrent en cas lettres, donc les encodeurs commencent en LTRS et n’émettent un code FIGS que lorsque le caractère suivant exige des figures, puis émettent à nouveau LTRS lorsque les lettres reprennent.
Les symboles partagés — espace, CR et LF — sont valides dans les deux cas et n’imposent pas de décalage. Ce point d’accès suit cette machine d’états classique : à l’encodage il parcourt chaque caractère, met les lettres latines en majuscules, insère LTRS ou FIGS lorsque le cas requis diffère du cas courant, et ajoute le motif de cinq bits du caractère. Au décodage il commence en lettres, met à jour l’état sur les jetons LTRS et FIGS, ignore NULL et imprime le caractère de la table active.
Les cellules figures WRU et BEL n’ont pas de forme imprimable ordinaire et sont signalées comme libellés de codes non mappés plutôt que d’inventer des glyphes privés.
Cas d’usage
Travaux pratiques ITA2 et histoire du téléimprimeur
Laissez les étudiants encoder de courts messages, inspecter les insertions automatiques LTRS/FIGS et décoder leurs propres flux de bits pour confirmer le modèle de décalage à cinq bits.
Outillage RTTY et Telex d’époque
Générez des groupes ITA2 de cinq bits déterministes pour des exercices de radiotélétype, des démos de musée et des notes de restauration sans clavier mécanique.
Défis CTF et d’encodage classique
Décodez des dumps Baudot à cinq bits et réencodez les réponses avec les mêmes règles de décalage que les tables pédagogiques et les documents de format filaire.
Questions fréquentes
Qu’est-ce que le Baudot–Murray ITA2 ?
L’ITA2 (CCITT-2) est un alphabet de téléimprimeur à cinq bits. Les codes 0–31 désignent des caractères différents selon le décalage lettres (LTRS) ou figures (FIGS). Cet outil encode et décode cet alphabet avec insertion automatique des décalages.
Comment fonctionnent les décalages lettres et figures ?
Les flux commencent en cas lettres. Lorsqu’un chiffre ou une ponctuation de figures est requis, un code FIGS (11011) est émis d’abord ; lorsque les lettres reprennent, un code LTRS (11111) est émis. Espace, CR et LF fonctionnent dans les deux cas sans forcer de décalage.
Quels formats pouvez-vous utiliser au décodage ?
Des groupes de 5 bits séparés par des espaces (ex. 00011 00101), le décimal 0–31, l’hex 0x00–0x1f, ou une chaîne binaire continue dont la longueur est un multiple de 5.
Quels caractères ne peut-on pas écrire en Baudot ITA2 ?
ITA2 couvre les lettres de A à Z, les chiffres, l'espace, le retour chariot, le saut de ligne et quelques signes comme - ' ! , ( ) : + / ? & . ; # et £. Les minuscules passent en majuscules ; le reste est ignoré et listé, pour qu'aucun symbole ne disparaisse sans prévenir.
Pourquoi mon message encodé contient-il 11011 ou 11111 ?
Ce sont les codes de décalage : 11011 passe aux chiffres et 11111 revient aux lettres. Ils sont ajoutés automatiquement chaque fois que le message alterne entre lettres et chiffres ou ponctuation. Un texte fait uniquement de lettres, comme HI, n'en a besoin d'aucun.
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/baudot \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"HI"}'const res = await fetch("https://api.kit.forhosting.com/enc/baudot", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "HI"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/baudot",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "HI"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/baudot", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"HI"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"HI"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/baudot", 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
{
"text": "HI"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.baudot",
"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
Contrat d’entrée, champs de sortie et signalement des caractères non mappés
Pour encoder, text est du texte brut ordinaire ; pour décoder, text est un flux de codes ITA2. L’encodage accepte A–Z dans les deux casses, les chiffres de zéro à neuf, l’espace, le retour chariot, le saut de ligne et la ponctuation de figures (trait d’union, apostrophe, virgule, exclamation, deux-points, parenthèses, plus, interrogation, esperluette, point, barre, point-virgule, dièse et signe livre). Le décodage accepte des groupes de cinq bits séparés par des espaces comme 00011, des entiers décimaux de zéro à trente et un, des jetons hex comme 0x03, ou une chaîne binaire continue dont la longueur est un multiple de cinq. Envoyez en POST un corps JSON avec le champ chaîne obligatoire text. Le mode optionnel mode vaut encode par défaut et accepte aussi decode, plus de courts alias tels que enc, e, to_baudot, dec, d et from_baudot. Les alias du payload comprennent input, value, data, s, message, plaintext et ciphertext afin de réutiliser des formes existantes. Tout autre caractère — arobases, pour cent, emoji, lettres accentuées hors alphabet ITA2 — est ignoré, enregistré une fois dans l’ordre de première apparition dans le tableau unmapped et compté dans unmapped_count, tandis que les caractères mappés produisent encore des codes. Si rien dans la chaîne n’est mappable, la tâche échoue avec invalid_input au lieu d’un succès vide. Jetons mal formés, décimaux hors plage et binaire continu de longueur non multiple échouent avec invalid_input et ne sont pas facturés. En succès le corps inclut result (groupes binaires à l’encodage, texte brut au décodage), mode, encoding fixé à baudot-ita2, codes comme tableau d’entiers de zéro à trente et un avec les décalages insérés, code_count, mapped, unmapped, unmapped_count, shift_count, input_length, output_length et une courte chaîne formula rappelant la règle de décalage ITA2. Les appels API réussis utilisent le prix de base publié de $0.002 par élément ; les échecs de validation ne consomment pas le solde.
Où un encodeur Baudot ITA2 s’avère utile en pratique
Les cours d’histoire de l’informatique et de théorie du codage utilisent un encodeur Baudot ITA2 pour que les étudiants voient pourquoi cinq bits plus deux codes de décalage couvrent lettres et figures sans un sixième bit, inversent un flux construit à la main et vérifient leurs insertions de décalage. Les projets de radioamateur et de restauration de Telex d’époque ont besoin d’un oracle déterministe qui produise les mêmes groupes de bits qu’aurait choisis un téléimprimeur mécanique, avec FIGS automatique avant une suite de chiffres et LTRS au retour des lettres. Les logiciels de documentation et d’expositions de musée génèrent des exemples étiquetés pour les cartels sans monter une pile modem RTTY complète. Les défis CTF et de chiffrement classique cachent parfois des drapeaux dans des dumps binaires ou décimaux ITA2 ; les résolveurs ont besoin des deux sens et d’un invalid_input clair lorsqu’un jeton n’est pas un groupe légal de cinq bits. Comme l’implémentation est du parse pur de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant, et l’échec de validation est gratuit.
Questions techniques
Que devient un caractère que l’ITA2 ne peut pas représenter ?
À l’encodage il est ignoré et listé une fois dans le tableau unmapped (avec unmapped_count). Les caractères mappés produisent encore des codes. Si rien n’est mappé, la requête échoue avec invalid_input.
Combien coûte l’encodeur Baudot ITA2 ?
L’outil navigateur est gratuit. Les requêtes API utilisent le solde prépayé KIT à $0.002 par appel réussi ; une entrée invalide n’est pas facturée.