Aller au contenu principal

Qu'est-ce que la fonction OCTDEC ?

Définition
La fonction OCTDEC convertit un nombre exprimé en base octale (base 8, chiffres 0 à 7) en sa valeur décimale (base 10). Elle accepte jusqu'à 10 chiffres octaux et retourne un entier.

La fonction OCTDEC (OCT2DEC en anglais dans les versions anglophones) convertit un nombre écrit en base 8 (octal) vers notre système décimal habituel. C'est la porte d'entrée vers toutes les opérations arithmétiques sur des données octales : une fois converties en décimal, tu peux les trier, les comparer, les multiplier et les intégrer dans des formules standard.

Que tu sois développeur Unix, administrateur système ou ingénieur travaillant avec des codes techniques, OCTDEC simplifie la conversion des permissions de fichiers, des registres matériels et autres données en base 8. Elle sert aussi de pont vers les autres fonctions de conversion : OCTDEC → DECBIN ou DECHEX pour passer de l'octal au binaire ou à l'hexadécimal en deux étapes.

Syntaxe

=OCTDEC(nombre)

Clique sur un argument pour aller à son explication.

Les nombres octaux de 10 caractères commençant par 4, 5, 6 ou 7 sont interprétés comme négatifs via le complément à deux sur 30 bits. Par exemple, =OCTDEC("7777777777") retourne -1. Pour les valeurs de moins de 10 caractères, tous les résultats sont positifs.

Lucas, la mascotte du Dojo, inspecte les arguments de la fonction à la loupe

Comprendre chaque paramètre de la fonction OCTDEC

1

nombre

: le nombre octal à convertir

Il peut contenir jusqu'à 10 caractères et doit être composé uniquement de chiffres de 0 à 7 (c'est la base 8). Tu peux le fournir sous forme de texte ("755") ou de nombre (755), mais attention : en octal, les chiffres 8 et 9 n'existent pas.

La valeur maximale positive est 3777777777 en octal (soit 536 870 911 en décimal). Au-delà, les nombres sont interprétés comme négatifs.

Attention : Les chiffres 8 et 9 n'existent pas en octal. Si ta valeur en contient, Excel retourne #NOMBRE!. Vérifie tes données source avec =SIERREUR(OCTDEC(A1); "Valeur invalide").

Lucas, la mascotte du Dojo, fait une démonstration pas à pas de la fonction dans Excel

Exemples pratiques pas à pas

Exemple 1

Comment convertir un code de registre octal en décimal avec la fonction OCTDEC

Les registres de la carte sont documentés en octal, 17 ou 52, parce que le constructeur les a toujours notés ainsi. Ton tableau de suivi, lui, doit trier ces codes, les comparer et les additionner, et l'octal ne se prête à aucun de ces calculs. La fonction OCTDEC ramène chaque code en base 10, la seule dans laquelle Excel sait compter.

Les étapes
  1. 1
    Dans une cellule, écris =OCTDEC(.
  2. 2
    En 1er argument : clique sur la cellule qui porte le code octal à convertir, A2 avec 17, plutôt que de retaper la valeur. Excel lit toujours ce code en base 8, donc le 17 n'est pas dix-sept mais un 1 de poids 8 suivi d'un 7, et il ne peut contenir que les chiffres 0 à 7.
  3. 3
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule sur tout l'inventaire pour convertir chaque registre.
Au final, ta formule devrait ressembler à ça :=OCTDEC(A2)
Explication
La fonction OCTDEC relit chaque chiffre avec son poids en puissance de 8 : le 17 de la première ligne vaut 1×8 + 7, soit 15. Le 200 de la quatrième ressort 128, parce que le 2 y pèse deux fois 64.
Exemple 2

Comment repérer un registre en zone haute en combinant les fonctions OCTDEC et SI

La moitié haute de l'espace mémoire commence à l'adresse 128, et les registres qui s'y trouvent réclament une procédure d'accès différente. Tes codes sont en octal et personne ne voit à l'œil nu que 345 dépasse ce seuil quand 101 reste largement en dessous. En passant ta fonction OCTDEC dans une fonction SI, tu convertis et tu tranches dans la même cellule.

Les étapes
  1. 1
    Dans une cellule, écris =SI(.
  2. 2
    En 1er argument : écris la comparaison qui départage les deux zones mémoire, OCTDEC(A2)>127. La fonction OCTDEC convertit d'abord le code, ici le 17 de A2 qui vaut 15 en décimal, puis confronte ce résultat au seuil. Comme la conversion rend un vrai nombre et non du texte, la comparaison est bien numérique.
  3. 3
    En 2ᵉ argument : saisis le texte à afficher quand le test est vrai, "Haute", entre guillemets. Le 345, qui vaut 229 en décimal, dépasse le seuil et bascule de ce côté.
  4. 4
    En 3ᵉ argument : saisis le texte à afficher sinon, "Basse", également entre guillemets. Le 101, qui ne vaut que 65, reste sous les 128 et ressort de ce côté.
  5. 5
    Ferme la parenthèse et appuie sur Entrée. La conversion et le tri se font dans la même cellule, ce qui laisse la colonne triable et prête pour une mise en forme conditionnelle.
Voici la formule que tu obtiens à la fin :=SI(OCTDEC(A2)>127; "Haute"; "Basse")
Explication
La fonction OCTDEC convertit d'abord, la fonction SI compare ensuite : le 17 de la première ligne vaut 15 en décimal, loin sous le seuil de 128, d'où Basse. Le test porte sur un vrai nombre, ce qui te permet aussi de trier la colonne ou d'y poser une mise en forme conditionnelle.
Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec OCTDEC

1Astuce

Combiner OCTDEC avec DECOCT pour des conversions circulaires

Tu peux utiliser OCTDEC pour convertir de l'octal en décimal, faire un calcul arithmétique, puis DECOCT pour revenir à l'octal. Par exemple, =DECOCT(OCTDEC("755") + 1; 3) calcule la permission supérieure à 755.
Cette technique est utile pour générer des tables de permissions adjacentes ou pour vérifier que tes calculs de conversion sont cohérents (aller-retour sans perte).

2Astuce

Analyser des masques de bits avec des fonctions logiques

Convertis tes masques octaux en décimal avec OCTDEC, puis utilise BITET, BITOU ou BITOUEXCLUSIF pour faire des opérations logiques. =BITOU(OCTDEC("377"); OCTDEC("252")) combine deux masques octaux en une seule opération.
Cette combinaison est idéale pour comparer ou fusionner des configurations de registres sans jamais quitter Excel.

Lucas, la mascotte du Dojo, l'air gêné face à une erreur Excel

Les erreurs fréquentes avec la fonction OCTDEC

OCTDEC est intraitable sur un point : l'octal ne connaît que les chiffres 0 à 7. Glisse un 8 ou un 9 dans ta valeur (souvent une donnée saisie en décimal par mégarde) et tu récoltes un #NOMBRE! immédiat.

Le même #NOMBRE! revient si tu dépasses 10 caractères, et il y a un piège plus sournois : une valeur de 10 chiffres qui commence par 4 à 7 ressort négative à cause du complément à deux ("7777777777" donne -1).

Erreur #NOMBRE! avec les chiffres 8 ou 9

En octal, seuls les chiffres de 0 à 7 existent. Si ta valeur contient 8 ou 9, Excel retourne #NOMBRE!. C'est l'erreur la plus fréquente, souvent due à des données saisies en décimal par erreur.

Solution : Vérifie que tous tes chiffres sont compris entre 0 et 7. Utilise =SIERREUR(OCTDEC(A1); "Valeur invalide") pour traiter les erreurs sans bloquer ton tableau. Les valeurs correctes : "177"127, "755"493.

Erreur #NOMBRE! en dépassant la limite de 10 caractères

OCTDEC accepte au maximum 10 caractères octaux. Si tu essaies de convertir un nombre plus long, Excel retourne #NOMBRE!. La valeur la plus longue acceptable est 7777777777 (10 fois le chiffre 7).

Solution : Vérifie la longueur de ta valeur avec =NBCAR(A1). Si tu dépasses 10 caractères, tu travailles avec des valeurs hors de la plage d'OCTDEC. La valeur positive maximale est 3777777777536 870 911 en décimal.

Confondre octal et décimal : 100 ne vaut pas 100

Le nombre 100 n'a pas la même valeur en octal et en décimal. En octal, 100 représente = 64 en décimal, et non 100. C'est un piège fréquent quand les données proviennent de sources mixtes.

Solution : Toujours identifier le système de numération de tes données source avant d'appeler OCTDEC. En octal : 108, 10064, 1000512. Si tu as un doute, vérifie que tous les chiffres sont entre 0 et 7.

Résultat négatif inattendu sur une valeur de 10 chiffres

Pour les nombres octaux de 10 caractères commençant par 4, 5, 6 ou 7, OCTDEC utilise la notation en complément à deux et retourne un nombre négatif. Par exemple, =OCTDEC("7777777777") retourne -1.

Solution : Si tu veux forcer un résultat positif sur ces valeurs, travaille avec des nombres de moins de 10 chiffres. La valeur maximale positive sur 10 chiffres est 3777777777536 870 911. Pour détecter les négatifs : =SI(OCTDEC(A1)<0; "Négatif"; OCTDEC(A1)).

Vrai ou faux ?
« En octal, 100 vaut 100. » Faux. En base 8, le nombre 100 représente 8 au carré, soit 64 en décimal. C'est le piège classique quand des données octales et décimales se mélangent : vérifie toujours que tous les chiffres sont compris entre 0 et 7.
FAQ

Questions fréquentes

OCTDEC est essentiel quand tu travailles avec des systèmes Unix/Linux (permissions de fichiers en octal) ou des données techniques en base 8. La fonction te permet de convertir instantanément ces valeurs en décimal pour tes analyses et calculs, sans faire les conversions manuellement avec des puissances de 8.

Ressources

Pour aller plus loin

Continue sur ta lancée après la fonction OCTDEC : la leçon associée, un modèle prêt à l'emploi et le guide pour progresser.

Tout voir