- 2. Характеристики
 - 3 Рейтинг
 - 4. Функциональный обзор
 - 10. Эксплуатация устройства
 
- Библиотеки
 
- Операторы
- Sketch
 - Управляющие операторы
 - Синтаксис
 - Арифметические операторы
 - Операторы сравнения
 - Логические операторы
 - Указатели доступа
 - Битовые операторы
 - Составные операторы
- &= (составное побитовое И)
 
 
 - Данные
- Типы данных
 - Преобразование типов данных
 - Область видимости переменных и квалификаторы
 - Утилиты
 
 - Цифровой ввод/вывод
 - Аналоговый вход/выход
 - Расширенный ввод/вывод
 - Время
 - Математические функции
 - Тригонометрические функции
 - Символы
 - Случайные числа
 - Биты и байты
 - Внешние Прерывания
 - Прерывания
 - Функции передачи данных
 
- Функции
 
- Устройства
- Датчики
 - Модули
 
 
&= (составное побитовое И)
Описание
 Составной побитовый оператор AND &= часто используется с переменной и константой для принудительного перевода определенных битов в переменной в состояние LOW (в 0). В руководствах по программированию это часто называют «очисткой» или «сбросом» бит.
Обзор побитового оператора И &:
0 0 1 1 операнд1
 0 1 0 1 операнд2
 -------
 0 0 0 1 (операнд1 & операнд2) - возвращаемый результат
  
 Синтаксис
 x &= y; // эквивалент записи x = x & y; 
 
 Параметры
 x: переменная типа char, int или long
 y: целочисленная константа либо переменная типа char, int или long 
 
 Пример
У пар, где есть как минимум один «0», в итоге тоже получается «0»
myByte & B00000000 = 0;
 
а у пар, где оба бита — «1», итоговым битом тоже будет «1»
myByte & B11111111 = myByte;
 
 Примечание
Поскольку мы имеем дело с битами в побитовом операторе - удобно использовать двоичное представление констант. Числа по-прежнему имеют одинаковое значение в других представлениях, их не так просто понять. Кроме того, B00000000 показан для ясности, но ноль в любом числовом формате равен нулю
Следовательно, чтобы очистить (установить в ноль) биты 0 и 1 переменной, оставив остальную часть переменной без изменений, используйте составной битовый оператор AND (&=) с константой B11111100
1 0 1 0 1 0 1 0 переменная 
 1 1 1 1 1 1 0 0 маска
 ---------------
 1 0 1 0 1 0 0 0 первые 6 бит остались нетронутыми, 2 последних - были очищены
Теперь то же самый пример с битами переменной, замененными символом x
x x x x x x x x переменная
 1 1 1 1 1 1 0 0 маска
 ---------------
 x x x x x x 0 0 первые 6 бит остались нетронутыми, 2 последних — были очищены
Так что если:
myByte = B10101010;
 myByte &= B11111100; // результат в B10101000
