Aller au contenu principal

Qu'est-ce que la fonction DECBIN ?

Définition
La fonction DECBIN convertit un nombre entier décimal en chaîne de texte représentant ce nombre en base 2 (binaire). La plage acceptée est -512 à 511 (représentation sur 10 bits).

DECBIN te sert quand tu dois raisonner en bits plutôt qu'en décimal, par exemple pour vérifier d'un coup d'oeil quels indicateurs sont actifs dans une valeur numérique, sans reconvertir chaque nombre à la main. C'est la fonction à laquelle tu penses dès qu'Excel doit parler le même langage que ton système ou ton protocole.

Concrètement, elle te sert à visualiser chaque octet d'une adresse IP en bits, à documenter les permissions Unix (lecture, écriture, exécution correspondent aux bits 4, 2, 1), à analyser des drapeaux de protocoles réseau, ou à construire des tables de référence complètes décimal-binaire-hexadécimal pour tes formations ou tes audits techniques.

Syntaxe

Clique sur un argument pour aller à son explication.

Le résultat de DECBIN est du texte, pas un nombre. Tu ne peux pas faire d'opérations arithmétiques directement sur ce résultat. Pour manipuler les bits individuels, utilise les fonctions BITOU, BITET, BITDECALG.

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

Comprendre chaque paramètre de la fonction DECBIN

DECBIN prend le nombre à convertir, puis un nombre de bits que tu peux préciser ou laisser de côté. Sans le second argument, elle te donne le binaire le plus court possible : 5 devient 101. Glisse 8 derrière et tu forces un octet complet avec ses zéros à gauche, ce qui te sauve la mise dès que tu alignes des adresses IP ou des registres.

Attention à la borne du premier argument : DECBIN ne va que de -512 à 511, tout ce qui dépasse te renvoie #NOMBRE!.

1

nombre

: le nombre entier décimal à convertir

Doit être compris entre -512 et 511 inclus. Les valeurs en dehors de cette plage renvoient l'erreur #NOMBRE!.

Pour les nombres négatifs, DECBIN utilise la notation en complément à deux sur 10 bits : le bit de poids fort (à gauche) vaut 1 pour les négatifs. -1 donne 1111111111, -512 donne 1000000000. Si tu fournis un nombre décimal (non entier), Excel tronque vers le bas automatiquement.

Attention : Les nombres au-delà de 511 ou en dessous de -512 renvoient #NOMBRE!. Pour convertir de plus grands entiers en binaire, tu dois créer une formule personnalisée basée sur des divisions successives par 2.

2

[nb_caractères]

: le nombre de caractères (bits) du résultat(facultatif)

Par défaut, DECBIN utilise le minimum nécessaire : 5 donne 101 sur 3 bits. Si tu spécifies 8, la même valeur donne 00000101 avec des zéros non significatifs à gauche.

Si nb_caractères est inférieur au nombre de bits nécessaires pour représenter la valeur, la fonction renvoie #NOMBRE!. Par exemple, =DECBIN(255;4) échoue car 255 nécessite 8 bits.

Le chiffre clé
DECBIN plafonne vite : elle ne code que de -512 à 511, soit 1 024 valeurs sur 10 bits. Un cran au-delà et c'est #NOMBRE!. Pour de plus grands entiers, passe par DECHEX ou une formule maison de divisions successives par 2.
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 nombre décimal en binaire avec la fonction DECBIN

Tu configures un registre dont chaque bit commande une option, mais ton tableau ne contient que la valeur numérique et personne ne devine quelles options sont réellement actives derrière un 10. Ta colonne aligne des valeurs comme 10 ou 25, et tu veux voir les bits correspondants en face. La fonction DECBIN te sort l'écriture binaire de chaque nombre, bit par bit.

Les étapes
  1. 1
    Dans une cellule, écris =DECBIN(.
  2. 2
    En 1er argument : clique sur la cellule qui contient l'entier à convertir, A2. Elle affiche 10, la première ligne du tableau. Pointer la cellule plutôt que taper le chiffre te permet de réutiliser la même formule sur les quatre registres suivants.
  3. 3
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule vers le bas jusqu'à la dernière ligne. Le second argument reste absent, donc chaque résultat prend la largeur qui lui suffit et pas une de plus : 10 ressort sur quatre bits avec 1010, 7 sur trois bits avec 111.
Au final, ta formule devrait ressembler à ça :=DECBIN(A2)
Explication
La fonction DECBIN décompose le nombre en puissances de 2 et pose un 1 à chaque position utilisée : 10 vaut 8 + 2, d'où 1010. Le résultat sort en texte et non en nombre, ce qui explique qu'il vaille 0 si tu essaies de le calculer.
Exemple 2

Comment afficher les huit bits d'un octet avec la fonction DECBIN

Tu compares les registres d'une carte ligne par ligne, mais comme chaque conversion prend la largeur qu'elle veut, les bits ne tombent jamais à la même place et repérer celui qui a changé devient un supplice. Tu as les valeurs décimales et tu veux un octet complet, huit bits, sur chaque ligne. La fonction DECBIN accepte un second argument justement pour imposer cette largeur.

Les étapes
  1. 1
    Dans une cellule, écris =DECBIN(.
  2. 2
    En 1er argument : clique sur la cellule du registre à convertir, A2. Elle contient 10, et la conversion se déroule exactement comme sans second argument. Seule la présentation du résultat va changer.
  3. 3
    En 2ᵉ argument : saisis le nombre de bits que doit occuper le résultat, 8. C'est la largeur d'un octet, donc la fonction DECBIN comble le vide par des zéros à gauche et rend 00001010. Ne descends jamais sous le nombre de bits réellement occupés, car =DECBIN(255; 4) renvoie #NOMBRE! puisque 255 en réclame huit.
  4. 4
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule sur les quatre registres suivants. Le 8 est recopié avec elle, si bien que les cinq lignes ressortent toutes sur la même largeur.
Voici la formule que tu obtiens à la fin :=DECBIN(A2; 8)
Explication
Le second argument fixe la largeur, et la fonction DECBIN comble le reste avec des zéros à gauche : 10 s'écrit 00001010 au lieu de 1010. Chaque bit occupe désormais toujours la même colonne d'un bout à l'autre du tableau, ce qui rend le bit 7 repérable à l'oeil.
Exemple 3

Comment éviter l'erreur #NOMBRE! aux bornes de la fonction DECBIN

Un script alimente ta colonne avec des valeurs calculées et une partie du tableau se remplit de #NOMBRE! sans que rien n'explique pourquoi ces lignes précisément. La borne de la fonction DECBIN est bien plus basse qu'on ne l'imagine, et les valeurs négatives ne ressortent pas du tout comme attendu. Vérifier ces deux limites avant de bâtir ta colonne t'évite de chercher l'erreur ailleurs.

Les étapes
  1. 1
    Dans une cellule, écris =DECBIN(.
  2. 2
    En 1er argument : clique sur la cellule qui porte l'entier à convertir, A2. Elle affiche 511, le plus grand nombre que la fonction DECBIN accepte. La ligne juste en dessous le prouve, puisque 512 renvoie déjà #NOMBRE!.
  3. 3
    Ferme la parenthèse et appuie sur Entrée, puis recopie la formule sur les quatre lignes suivantes. La borne basse vaut -512, et les entiers négatifs ressortent en complément à deux sur dix bits, si bien que -1 s'écrit 1111111111 et -512 s'écrit 1000000000. Un cran plus bas, -513 quitte la plage et renvoie #NOMBRE! à son tour.
Une fois les morceaux assemblés, ta formule donne ça :=DECBIN(A2)
Explication
La fonction DECBIN travaille sur 10 bits et pas un de plus, ce qui la borne à 511 d'un côté et -512 de l'autre : au-delà, c'est l'erreur #NOMBRE!. Les valeurs négatives passent par le complément à deux, donc -1 occupe les 10 bits sous la forme 1111111111 au lieu de porter un signe moins.
Le savais-tu ?
Une puissance de 2 se repère au premier coup d'oeil en binaire : elle n'a jamais qu'un seul bit à 1, placé à la position de son exposant. 16, soit 2 puissance 4, donne 10000. C'est aussi pour ça que les tailles mémoire sont toujours des puissances de 2.
Lucas, la mascotte du Dojo, avec une ampoule, partage des astuces avancées

Astuces avancées avec DECBIN

1Astuce

Analyser les drapeaux de bits avec STXT

Pour vérifier si un bit précis est actif dans un nombre, combine DECBIN avec STXT : =SI(STXT(DECBIN(13;4);2;1)="1";"Bit 3 activé";"Bit 3 désactivé") extrait le 2ème caractère du binaire sur 4 bits du nombre 13 (1101).
Utile pour décoder des champs de flags de protocoles réseau (TCP SYN, ACK, FIN) ou des registres d'état de microcontrôleurs.

2Astuce

Compter les bits actifs avec NBCAR et SUBSTITUE

Pour compter combien de bits sont à 1 dans un nombre, soustrais la longueur sans les 1 à la longueur totale : =NBCAR(DECBIN(A1))-NBCAR(SUBSTITUE(DECBIN(A1);"1";"")) renvoie le nombre de bits actifs.
Pratique pour calculer le nombre d'hôtes dans un masque de sous-réseau ou analyser la densité de bits dans des données encodées.

3Astuce

Construire une table de référence décimal-binaire-hexadécimal

Pour une table complète 0-255, place les nombres en colonne A, puis =DECBIN(A2;8) en colonne B et =DECHEX(A2;2) en colonne C. Tu obtiens une référence croisée immédiatement utilisable pour des audits ou des formations.
Filtre sur la colonne binaire pour isoler tous les octets d'une valeur spécifique.

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

Les erreurs fréquentes avec la fonction DECBIN

Tout tourne autour de deux limites que DECBIN ne pardonne pas. La première, c'est la plage -512 à 511 : sors-en d'un cran et tu récoltes #NOMBRE!. La seconde t'attend sur le second argument, où demander moins de bits qu'il n'en faut (=DECBIN(255;4) pour un nombre qui en réclame 8) déclenche le même code.

Le reste vient surtout d'un malentendu : le résultat est du texte, donc il se comporte comme 0 dans un calcul, et les négatifs s'écrivent en complément à deux où 1111111111 signifie -1, pas une grande valeur.

Erreur #NOMBRE! : valeur hors de la plage -512 à 511

DECBIN utilise une représentation sur 10 bits, ce qui limite la plage à -512 (minimum) et 511 (maximum). Toute valeur en dehors renvoie #NOMBRE!.

Solution : Vérifie que ta valeur source est dans la plage. Pour des nombres plus grands, tu dois créer une formule personnalisée basée sur des divisions successives par 2 et CONCATENER, ou utiliser un outil de conversion externe.

Erreur #NOMBRE! : nb_caractères insuffisant pour la valeur

nb_caractères est inférieur au nombre de bits nécessaires. =DECBIN(255;4) échoue car 255 nécessite 8 bits (11111111) et 4 est insuffisant.

Solution : Augmente nb_caractères jusqu'à la valeur nécessaire pour représenter ton nombre. Pour un octet complet (0-255), utilise toujours nb_caractères=8.

Le résultat de DECBIN s'affiche comme 0 dans des calculs

DECBIN renvoie du texte (la représentation en chiffres 0 et 1), pas un nombre. Toute tentative de calcul arithmétique sur ce résultat retourne 0 ou une erreur.

Solution : Pour manipuler les bits, utilise les fonctions dédiées : BITOU, BITET, BITET pour les opérations logiques. Pour extraire un bit précis, utilise STXT sur le résultat de DECBIN.

Interprétation incorrecte des nombres négatifs

Les nombres négatifs en complément à deux peuvent prêter à confusion : 1111111111 n'est pas la valeur maximale, c'est -1. Le bit de poids fort à 1 indique le signe négatif.

Solution : Rappelle-toi que DECBIN représente les négatifs en complément à deux sur 10 bits. -1 donne 1111111111, -512 donne 1000000000. Pour vérifier, utilise la fonction inverse BINDEC qui reconvertit en décimal.

Lucas, la mascotte du Dojo, compare deux fonctions Excel

DECBIN vs DECHEX vs DECOCT

CritèreDECBINDECHEXDECOCT
Base de sortieBase 2 (binaire)Base 16 (hexadécimal)Base 8 (octal)
Plage d'entrée-512 à 511-549 755 813 888 à 549 755 813 887-536 870 912 à 536 870 911
Cas d'usage principalÉlectronique, réseau, permissions UnixCouleurs HTML, adresses mémoire, encodagePermissions Unix (notation chmod classique)
Lisibilité humaineTrès longue pour de grands nombresCompacte, 2 car. par octetCompacte pour les permissions
FAQ

Questions fréquentes

DECBIN utilise une représentation binaire sur 10 bits, ce qui permet de coder 1 024 valeurs distinctes. Avec le complément à deux, la moitié (de -512 à -1) représente les négatifs et l'autre moitié (de 0 à 511) les positifs. Pour des nombres plus grands, il faudrait plus de bits, ce qu'Excel ne propose pas dans DECBIN.

Ressources

Pour aller plus loin

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

Tout voir