Битовые поля

В отличие от некоторых других компьютерных языков, в языке С имеется встроенная поддержка битовых полей, которая дает возможность получать доступ к единичному биту. Битовые поля могут быть полезны по разным причинам, а именно:

  • Если память ограничена, то в одном байте можно хранить несколько булевых переменных (принимающих значения ИСТИНА и ЛОЖЬ);
  • Некоторые устройства передают информацию о состоянии, закодированную в байте в одном или нескольких битах;
  • Для некоторых процедур шифрования требуется доступ к отдельным битам внутри байта.

Конечно же, все эти задач могут быть успешно решены с использованием побитовых операции, однако битовые поля могут придать коду больше упорядоченности и повысить его «читабельность». Возможно, что с их помощью даже удастся достичь большей эффективности.

Как объявить тип с битовыми полями?

Обращение к битовым полям производится следующим образом:

Дополнительную гибкость может дать обертывание подобной структуры в объединение (union):

Подобная структура позволяет удобно обращаться как к отдельным битам, так и ко всему байту сразу:

ну и так далее…

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*