Passer au contenu principal
ArithmétiqueNotion · Glossaire

Octal

Le système octal est un système de numération en base 8, utilisant les chiffres de 0 à 7. Chaque chiffre octal représente exactement trois chiffres binaires (bits), ce qui rend la conversion entre base 8 et base 2 particulièrement simple. Le système octal a été largement utilisé en informatique, notamment dans les architectures avec des mots de 12, 24 ou 36 bits. La notation octale est souvent préfixée par 0 en programmation. La conversion en base 10 s'effectue en utilisant les puissances de 8.
Correspondance entre 345 en octal et ses triplets binaires Les chiffres 3, 4 et 5 sont alignés avec 011, 100 et 101. La somme des puissances de 8 et la valeur binaire donnent 229. Octal Binaire 3 4 5 011 100 101 3 × 8² + 4 × 8¹ + 5 × 8⁰ = 229 011 100 101₂ = 229₁₀
Chaque chiffre de 345 en base 8 correspond à trois bits : 011, 100 et 101 forment ensemble l’écriture binaire de 229.
Sommaire

Ce que vous allez apprendre

  • Reconnaître les chiffres autorisés et la valeur positionnelle d’un nombre en base 8.
  • Convertir 345 en base 8 en 229 en base 10 par les puissances de 8.
  • Passer de l’octal au binaire en remplaçant chaque chiffre par trois bits.
  • Éviter les chiffres 8 et 9, le mauvais ordre des restes et l’interprétation automatique d’un zéro initial.

En clair

Imaginez un compteur qui revient à zéro juste après 7. Il affiche 0, 1, 2, 3, 4, 5, 6, 7, puis 10. Cette écriture est octale : la place suivante vaut huit fois la précédente. Ainsi, 10 en base 8 représente huit en base 10.
Le lien avec le binaire se voit chiffre par chiffre. Un chiffre octal suffit pour coder un groupe de trois bits : 5 correspond à 101, par exemple. On peut donc raccourcir une longue écriture binaire en regroupant ses bits par trois depuis la droite.

Définition

Le système octal est une écriture positionnelle en base 8. Il emploie exactement huit chiffres, de 0 à 7. Dans un nombre octal, chaque position vaut une puissance de 8 : 8⁰ pour les unités, 8¹ pour la position suivante, puis 8², et ainsi de suite. L’indice 8 placé après un nombre indique sa base ; par exemple, 108 vaut 8 en base 10.
Pour convertir un entier octal en base 10, on multiplie chaque chiffre par la puissance de 8 correspondant à sa position, comptée depuis zéro à droite, puis on additionne les produits. Réciproquement, des divisions successives par 8 donnent les chiffres octaux par leurs restes, à lire du dernier au premier.
Comme huit vaut 2³, chaque chiffre octal correspond exactement à trois bits, de 000 pour 0 à 111 pour 7. Cette correspondance a facilité l’emploi de l’octal avec des mots informatiques de 12, 24 ou 36 bits, tous découpables en groupes complets de trois bits. En programmation, un zéro initial a souvent signalé une valeur octale ; cette convention dépend toutefois de la syntaxe employée.

Un exemple, pas à pas

On convertit le nombre octal 3458 en base 10, puis en binaire.
Données : les chiffres sont 3, 4 et 5 ; leurs positions portent respectivement les poids 8², 8¹ et 8⁰.
Étape 1. On associe chaque chiffre à son poids : 3×82,4×81,5×803 \times 8^2,\quad 4 \times 8^1,\quad 5 \times 8^0.
Étape 2. On calcule les trois produits : 3×64=192,4×8=32,5×1=53 \times 64=192,\quad 4 \times 8=32,\quad 5 \times 1=5.
Étape 3. On additionne les résultats : 192+32+5=229192+32+5=229. Ainsi, 3458 vaut 229 en base 10.
Étape 4. Pour passer au binaire, on remplace 3, 4 et 5 par leurs groupes de trois bits : 011, 100 et 101. On obtient 0111001012, soit 111001012 sans le zéro initial.
Le résultat est 3458 = 22910 = 111001012. Pour le contrôler, les divisions de 229 par 8 donnent successivement les restes 5, 4 et 3 ; leur lecture en sens inverse restitue 3458. La figure aligne aussi chaque chiffre avec son triplet binaire.

En pratique

Pour condenser une écriture binaire, groupez les bits par trois depuis la droite et remplacez chaque triplet par le chiffre octal correspondant. Cette méthode est préférable au calcul décimal lorsque les groupes de bits sont déjà visibles.
Pour convertir un nombre octal connu en base 10, utilisez la somme pondérée par les puissances de 8. Si le nombre de départ est décimal, l’alternative adaptée consiste à effectuer des divisions successives par 8 et à relever les restes.
Dans une notation de programmation, un zéro initial peut annoncer l’octal. Avant d’interpréter 0345 comme une valeur en base 8, vérifiez la convention du langage ou du document, car ce préfixe n’est pas une règle universelle.
Dans un document consacré à une architecture de 12, 24 ou 36 bits, l’octal permet de lire le mot par groupes complets de trois bits. Pour une autre largeur, il faut contrôler le groupe de gauche et, au besoin, le compléter par des zéros initiaux.

À ne pas confondre

Octal et décimal. Les mêmes symboles n’ont pas toujours la même valeur de position. Le critère est la base annoncée : 108 vaut 810, tandis que 1010 vaut dix.
Octal et binaire. Le binaire n’emploie que 0 et 1 ; l’octal emploie les chiffres de 0 à 7. Le triplet 1012 et le chiffre 58 codent la même valeur, mais dans deux bases distinctes.
Octal et hexadécimal. L’octal regroupe les bits par trois et s’arrête au chiffre 7. L’hexadécimal les regroupe par quatre et dispose de seize chiffres. La suite binaire 1111 vaut donc 178, mais un seul chiffre hexadécimal.

Limites et pièges

8 et 9 ne sont pas des chiffres octaux. Une écriture comme 348 ne peut pas être lue telle quelle en base 8. Le chiffre 8 est le symptôme immédiat ; il faut corriger l’écriture ou identifier une autre base.
Le zéro initial reste une convention. Lire systématiquement 0345 comme un nombre octal peut donner une mauvaise valeur dans un contexte qui traite cette suite comme décimale. Il faut vérifier la syntaxe employée ou indiquer explicitement la base avec un indice.
Le groupe binaire de gauche peut être incomplet. Une conversion par triplets ne doit ni perdre ni déplacer un bit. On complète seulement à gauche avec un ou deux zéros : 111001012 devient 011 100 1012, sans changement de valeur.
Le sens des restes est inversé. Lors d’une conversion décimale vers l’octal, lire les restes dans leur ordre d’apparition renverse les chiffres. Pour 229, les restes 5, 4, 3 doivent être lus du dernier au premier afin d’obtenir 3458.

Pour aller plus loin

base de numération. Cette notion précise pourquoi la valeur d’une position dépend d’une puissance de la base choisie.
écriture binaire. Elle approfondit la représentation par bits dont chaque triplet se traduit par un chiffre octal.
Hexadécimal. Cette autre écriture compacte du binaire permet de comparer les regroupements par quatre bits aux triplets octaux.
Continuez avec Tangente

Explorez les mathématiques autrement

Retrouvez nos magazines, podcasts et jeux pour explorer les mathématiques autrement.

Découvrir les offres