Dizionario

Che cos'è il flag di bit?

Il Bit Flag, noto anche come bit field, è un metadato che puoi trovare in diversi tipi di file. Scopri che cosa significa, da dove viene e che cosa dice sul tuo file.

bit-flag

Un flag di bit raccoglie diverse risposte sì/no in un unico numero. Ogni cifra binaria di quel numero è un interruttore separato: acceso o spento, impostato o non impostato. È un modo compatto per un programma di registrare alcuni piccoli dati nello spazio di un solo valore.

Da dove proviene il valore

I flag di bit, chiamati anche campi di bit, provengono dalla programmazione. In linguaggi come C e C++ permettono a uno sviluppatore di memorizzare molti valori booleani all'interno di un singolo byte o di un insieme di byte, con ogni bit o gruppo di bit indirizzato separatamente. I formati di file riprendono la stessa idea per registrare le opzioni sui loro contenuti.

In un report dei metadati è più probabile che tu incontri un bit flag in un archivio ZIP e nei formati Office che internamente sono contenitori ZIP: documenti DOCX, XLSX e PPTX. Anche i file ODT e gli ebook EPUB memorizzano il flag, ma un report potrebbe non mostrarlo. Il formato ZIP assegna a ogni elemento dentro l'archivio un bit flag di uso generale, impostato dal programma che ha creato l'archivio. Nessuno inserisce questo valore manualmente.

Come leggere il valore

Il flag viene solitamente mostrato in esadecimale, un sistema numerico che conta a sedici e si scrive con un prefisso 0x. Un valore di 0x0 significa che nessun interruttore è impostato, che è il caso normale. Valori come 0x2 o 0x808 significano che uno o più bit sono attivi, e si leggono convertendo il numero in binario e osservando ogni posizione.

Tre degli interruttori ZIP che vale la pena conoscere:

  • il primo bit contrassegna l'elemento come crittografato, cioè richiede una password
  • il quarto bit indica che la dimensione e il checksum dell'elemento sono stati scritti dopo i dati invece che prima, cosa che succede quando un archivio viene creato al volo
  • il dodicesimo bit indica che il nome dell'elemento è memorizzato come UTF-8, la codifica dei caratteri che può rappresentare accenti, script non latini ed emoji

Perché è importante per il tuo file

Il flag spiega comportamenti che altrimenti sembrerebbero misteriosi. È lì che un documento protetto da password annuncia che è bloccato, prima che un programma ti chieda la password. È il motivo per cui alcune app non possono dirti quanto è grande un elemento dentro un archivio finché non lo hanno estratto. Ed è il motivo per cui i nomi di file con accenti o caratteri cinesi risultano perfetti in un'app di estrazione e illeggibili in un'altra: una rispetta l'interruttore UTF-8 e l'altra presume una codifica più vecchia.

Quello che il campo non fa è descrivere la qualità, e non contiene alcuna informazione personale. È una nota tecnica su come il file è stato scritto, utile quando qualcosa non si apre e vuoi capire perché.