Словник

Що таке бітовий прапорець?

Бітовий прапорець, також відомий як бітове поле, це метадані, які можна знайти в кількох видах файлів. Дізнайтеся, що це означає, звідки походить і що воно говорить про ваш файл.

bit-flag

Бітовий прапорець поєднує кілька відповідей «так/ні» в одному числі. Кожна двійкова цифра в цьому числі є окремим перемикачем: увімкнено чи вимкнено, встановлено чи ні. Це компактний спосіб для програми зберігати кілька дрібних фактів у межах одного значення.

Звідки походить значення

Бітові прапорці, їх також називають бітовими полями, походять з програмування. У мовах, таких як C та C++, вони дозволяють розробнику зберігати багато булевих значень в одному байті або наборі байтів, причому кожен біт або група бітів адресуються окремо. Формати файлів запозичують цю саму ідею, щоб фіксувати параметри щодо свого вмісту.

У звіті про метадані ви найчастіше зустрінете бітовий прапорець у ZIP-архіві та в форматах Office, які всередині є ZIP-контейнерами: документах DOCX, XLSX і PPTX. Файли ODT і електронні книги EPUB також зберігають цей прапорець, але у звіті його може бути не видно. Формат ZIP надає кожному елементу в архіві бітовий прапорець загального призначення, і значення цього прапорця встановлює програма, що створила архів. Ніхто не вводить це значення вручну.

Як прочитати значення

Прапорець зазвичай показують у шістнадцятковому форматі, системі числення на основі шістнадцяти, у якій запис починається з префікса 0x. Значення 0x0 означає, що жоден перемикач не встановлено, і це звичайний випадок. Такі значення, як 0x2 або 0x808, означають, що один або кілька бітів увімкнені. Щоб їх прочитати, число переводять у двійковий формат і дивляться на кожну позицію.

Варто знати про три перемикачі ZIP:

  • перший біт позначає елемент як зашифрований, тобто для нього потрібен пароль
  • четвертий біт означає, що розмір елемента та його контрольна сума були записані після даних, а не до них; так відбувається, коли архів створюється «на льоту»
  • дванадцятий біт означає, що назву елемента збережено в UTF-8, кодуванні символів, яке може відображати діакритичні знаки, нелатинські абетки та емодзі

Чому це важливо для вашого файлу

Прапорець пояснює поведінку, яка інакше здається загадковою. Саме в ньому документ із захистом паролем «оголошує», що він заблокований, ще до того, як будь-яка програма попросить пароль. Через нього деякі застосунки не можуть сказати, наскільки великий елемент усередині архіву, доки не розпакують його. І через нього імена файлів із діакритикою чи китайськими ієрогліфами в одному застосунку для розпакування відображаються правильно, а в іншому перетворюються на набір символів: один враховує цей перемикач UTF-8, а інший припускає старіше кодування.

Поле не описує якість і не містить персональних даних. Це технічна примітка про те, як було записано файл, корисна, коли щось не відкривається і ви хочете зрозуміти причину.

Мета ключі