Я работаю над парсингом некоторых двоичных файлов, у меня они открыты и в ArrayBuffer
.
В конкретной файловой структуре, которую я читаю, есть ряд битов boolean
, и я могу проверить, проверяются ли они с помощью:
(flag & 1) != 0; // bit 0
(flag & 2) != 0; // bit 1
(flag & 4) != 0; // bit 2
и т.д.
Однако у меня возникли проблемы с получением значений битов. Они охватывают несколько битов (например, биты 4-6) и состоят из целочисленного значения от 0-7.
Как несколько битов читаются так? Я понимаю, что это не столько вопрос JavaScript, сколько вопрос о том, как работают битовые и побитовые операторы.