Dictionnaire

Qu'est-ce qu'un bit de drapeau ?

Le bit de drapeau, également appelé champ de bits, est un métadonnées que l'on retrouve dans plusieurs types de fichiers. Découvrez ce qu'il signifie, d'où il vient et ce qu'il indique sur votre fichier.

bit-flag

Un indicateur de bits regroupe plusieurs réponses oui/non dans un seul nombre. Chaque chiffre binaire de ce nombre est un interrupteur distinct : activé ou désactivé, défini ou non défini. C'est une façon compacte pour un programme d'enregistrer quelques petites informations dans l'espace d'une seule valeur.

D'où vient la valeur

Les indicateurs de bits, aussi appelés champs de bits, viennent de la programmation. Dans des langages comme C et C++, ils permettent à un développeur de stocker de nombreuses valeurs booléennes dans un seul octet ou un ensemble d'octets, chaque bit ou groupe de bits étant adressé séparément. Les formats de fichiers reprennent la même idée pour enregistrer des options à propos de leur contenu.

Dans un rapport de métadonnées, vous croiserez le plus souvent un indicateur de bits dans une archive ZIP et dans les formats Office qui reposent sur un conteneur ZIP : documents DOCX, XLSX et PPTX. Les fichiers ODT et les livres numériques EPUB stockent eux aussi cet indicateur, mais un rapport peut ne pas l’afficher. Le format ZIP attribue à chaque élément de l’archive un indicateur de bits à usage général, défini par le programme qui a créé l’archive. Personne ne saisit cette valeur à la main.

Comment lire la valeur

Cet indicateur est généralement affiché en hexadécimal, un système de numération qui compte par seize et s'écrit avec un préfixe 0x. Une valeur de 0x0 signifie qu'aucun interrupteur n'est activé, ce qui est le cas habituel. Des valeurs comme 0x2 ou 0x808 signifient qu'un ou plusieurs bits sont à 1, et on les lit en convertissant le nombre en binaire et en examinant chaque position.

Trois des interrupteurs ZIP méritent d'être connus :

  • le premier bit marque l'élément comme chiffré, ce qui signifie qu'il nécessite un mot de passe
  • le quatrième bit indique que la taille et la somme de contrôle de l'élément ont été écrites après les données plutôt qu'avant, ce qui arrive lorsqu'une archive est produite à la volée
  • le douzième bit indique que le nom de l'élément est stocké en UTF-8, le codage de caractères qui peut représenter les accents, les écritures non latines et les emoji

Pourquoi cela est important pour votre fichier

Cet indicateur explique des comportements qui seraient autrement mystérieux. C'est là qu'un document protégé par mot de passe signale qu'il est verrouillé, avant que tout programme ne vous demande le mot de passe. C'est aussi pourquoi certaines applis ne peuvent pas vous dire quelle est la taille d'un élément dans une archive tant qu'elles ne l'ont pas extrait. Et c'est pourquoi des noms de fichiers avec accents ou caractères chinois s'affichent parfaitement dans un programme de décompression et comme des caractères incohérents dans un autre : l'un respecte ce commutateur UTF-8 et l'autre suppose un encodage plus ancien.

Ce champ ne décrit pas la qualité et ne contient aucune information personnelle. C'est une indication technique sur la manière dont le fichier a été écrit, utile quand quelque chose ne s'ouvre pas et que vous voulez savoir pourquoi.