Поразрядная конъюнкция — это логическая операция, которая выполняется над числами в их двоичном представлении путём применения операции конъюнкции к каждой паре соответствующих битов. 1
Суть операции: сравнить каждый бит двух чисел и вернуть 1 только в тех позициях, где оба сравниваемых бита равны 1. 2 Во всех остальных позициях результат будет 0. 2
Алгоритм выполнения поразрядной конъюнкции: 1
- Перевести числа в двоичную систему счисления. 1
- Выровнять числа по правому краю, при необходимости добавить ведущие нули. 1
- Справа налево применить конъюнкцию к каждой паре битов. 1
- Получившийся результат перевести обратно в десятичную систему. 1
В программировании операция поразрядной конъюнкции обозначается как &. 24
Некоторые области использования поразрядной конъюнкции в программировании:
- Доступ к отдельным битам числа. 3 Например, можно хранить несколько булевых значений не в отдельных переменных, а как двоичные разряды в числе. 3 Это экономит память и позволяет быстро проверять на соответствие шаблону. 3
- Реализация множества. 3 Если заранее известен диапазон допустимых значений, то можно закодировать множество в виде вектора бит, где i-й бит установлен, если число i входит в множество. 3
- Операции маскирования. 4 С помощью поразрядного оператора & можно принудительно установить заданный бит данных в значение 0. 4