Convertisseur texte en octal

Transformez le texte en codes octals, style Unix.

L’octal était la notation standard pour les codes de caractères sur les anciens systèmes Unix. Vous le rencontrez encore dans du code C hérité et dans la sortie de la commande od (octal dump). Convertir le texte en octal vous montre comment les programmeurs d’autrefois représentaient les caractères spéciaux avant que l’hexadécimal ne prenne le dessus.

Convertir du texte en octal à la main

  1. Écrivez votre texte. Prenons « OK ».
  2. Convertissez en décimal. O=79, K=75.
  3. Convertissez en octal. 79 décimal = 117 octal. 75 décimal = 113 octal.
  4. Écrivez. 117 113.

Codes octals courants pour les caractères

  • 101 = A (première lettre en ASCII)
  • 102 = B
  • 141 = a (première minuscule en ASCII)
  • 040 = espace (très fréquent en texte)
  • 012 = retour à la ligne
  • 000 = caractère nul (terminaison de chaîne en C)

Où vous voyez l’octal dans Unix

La commande od (« octal dump ») affiche par défaut les fichiers en octal. Si vous tapez od monfile.txt, vous verrez du texte encodé en octal pur. C’est une relique directe des années 1970, quand l’octal était la norme de l’époque. Les permissions Unix comme chmod 755 utilisent aussi l’octal, bien que pour les bits plutôt que pour les codes de caractères. Les vieux échappements C utilisent l’octal : "A\101B" encode A, puis le code 101 octal (qui est le caractère A), puis B.

Le choix de l’octal pour Unix n’était pas accidentel. L’octal s’aligne naturellement avec le binaire (3 bits = 1 chiffre octal), ce qui était précieux quand la mémoire était mesurée en kilobits. Aujourd’hui, nous pensons en octets et en hexadécimal, mais l’octal survit en écho historique dans Unix.

Questions sur texte vers octal

Pourquoi l’octal était-il choisi plutôt que le décimal pour les codes de caractères ?

L’octal s’aligne avec le binaire (3 bits par chiffre) et prend moins de place que le décimal pour encoder un octet (3 chiffres octals vs 3 chiffres décimaux). C’était une optimisation d’espace sur du papier et dans la mémoire limitée des ordinateurs 1960-1980.

Est-ce que od est le seul outil qui affiche en octal ?

Oui, principalement. D’autres outils comme hexdump affichent en hex. L’octal est tombé en désuétude ; od est un fossile vivant.

Comment utiliser les codes octals dans une chaîne C ?

Écrivez "\101\102\103" pour encoder A, B, C directement dans le code source. Le compilateur C convertit automatiquement les échappements octals en octets au moment de la compilation. Cela fonctionne mais est rarement utilisé aujourd’hui, sauf en code hérité des années 1980.

Est-ce qu’il y a une limite à la taille de l’octal dans un escape C ?

Oui absolument. \000 à \377 (octal) couvre les 256 octets possibles. Au-delà de \377, c’est ambigu, invalide ou cause une erreur du compilateur.

Pourquoi mon texte octal a tant de chiffres ?

L’octal utilise plus de chiffres parce que chaque chiffre octal ne peut valoir que 0-7. Le décimal permet 0-9, donc il est plus compact que l’octal. L’hex est le plus compact de tous (0-15 par chiffre hexadécimal).

Cookie
Nous nous soucions de vos données et aimerions utiliser des cookies pour améliorer votre expérience.