Convertisseur octal vers décimal

→
Décimal = chaque chiffre octal × 8 élevé à sa position, puis somme des termes

Octal vers décimal : décoder un mode, un masque ou un ancien vidage

Ce que fait cette conversion

Elle lit une valeur en base 8 et la reformule en base 10. C’est le sens utile lorsqu’un mode est déjà écrit en octal — comme chmod et ls l’attendent — et que le nombre doit entrer dans un script, un champ de configuration ou une comparaison où le code environnant suppose du décimal.

Chaque position est une puissance de huit

Depuis la droite, les poids valent 1, 8, 64, 512, etc. Convertissez 755 et vous obtenez 7 × 64 + 5 × 8 + 5 = 493. Notez que les chiffres ne sont plus trois permissions indépendantes une fois la valeur en décimal : la structure compacte qui rendait la forme octale lisible est exactement ce que la conversion dissout, ce qu’il vaut mieux garder en tête avant d’utiliser le résultat.

Tableau de conversion de l’octal vers le décimal

Des modes et des masques octaux avec leur valeur décimale. Convertir un mode de permissions en décimal sert à écrire des scripts ; le garder en octal reste préférable pour le lire, aussi la plupart des équipes consignent les deux.

OctalDécimal
00
11
77
108
1715
10064
377255
644420
755493
1000512

Pourquoi l’usage de l’octal s’est réduit aux permissions

Une base mérite sa place quand elle épouse le groupement de la machine. L’octal convenait aux mots de six et douze bits du matériel ancien, et dès que l’octet de huit bits est devenu universel, le groupement naturel est passé à quatre bits, donc à l’hexadécimal. Les permissions ont survécu parce qu’elles font réellement neuf bits de large et se découpent en trois groupes de trois — un cas où l’arithmétique de la base colle encore à la structure de la donnée.

Ne faites pas de calcul de permissions en décimal

Additionner un 493 décimal et un 64 pour accorder la lecture paraît raisonnable et ne l’est pas : 64 est soixante-quatre en décimal, et le bit qu’il active dans un mode octal n’est pas celui de la lecture. Faites l’arithmétique des permissions en octal, avec des valeurs comme 400 et 40, et ne convertissez que pour le stockage ou l’affichage.

Questions fréquentes

Comment convertir de l’octal en décimal à la main ?

Multipliez chaque chiffre par son poids de position — 1, 8, 64, 512, etc. depuis la droite — puis additionnez. Pour 755, cela donne 7 × 64 + 5 × 8 + 5, soit 448 + 40 + 5, ou 493.

Pourquoi chmod 755 s’affiche-t-il 493 dans mon script ?

Parce que le script lit le mode comme un simple entier décimal. Le système de fichiers stocke les mêmes bits dans les deux cas ; seule la notation change. Gardez la forme octale en tête et en commentaire, et convertissez à la frontière, là où la valeur rencontre du code qui attend du décimal.

Quelle est la plus grande valeur octale convertible ici ?

Bien plus grande que n’importe quel mode ou masque réel. La conversion s’exécute en arithmétique entière exacte : les entrées longues reviennent avec tous leurs chiffres justes au lieu du résultat arrondi d’une calculatrice en virgule flottante.

Un zéro en tête a-t-il une signification en octal ?

Pas numériquement — 0755 et 755 valent la même chose — mais c’est un marqueur utile qui signale « ceci est de l’octal », et plusieurs langages l’exigent pour un littéral octal. Le convertisseur accepte un zéro en tête et un préfixe 0o en entrée, et n’en affiche jamais en sortie.

L’outil accepte-t-il des fractions en octal ?

Oui, et il signale honnêtement celles qui ne peuvent pas être représentées. Certaines fractions octales se terminent et d’autres non, selon que le dénominateur est ou non une puissance de deux. Quand le développement ne se termine pas, le résultat est tronqué et clairement marqué, plutôt qu’arrondi comme s’il était exact.

Copiez le code ci-dessous et collez-le sur votre site pour ajouter ce convertisseur.

<!-- Octal en Décimal -->
<iframe src="https://unitflow.net/fr/embed/octal-to-decimal" title="Octal en Décimal" width="100%" height="420" loading="lazy" style="border:0;max-width:100%;display:block"></iframe>
<p><a href="https://unitflow.net/fr/octal-to-decimal" target="_blank" rel="noopener">Propulsé par UnitFlow</a></p>