Инструкции

Справочный раздел

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

Разделы инструкций

В сети

Пользователей: 313
Из них просматривают:
Аналоги: 56. Видео: 2. Даташиты: 62. Инструкции: 66. Новости: 14. Обзор: 1. Остальное: 4. Партнёры: 2. Программы: 17. Производители: 21. Профиль пользователя: 1. Расчёты: 2. Теги: 16. Форум: 49.
Участников: 2
Гостей: 311

Google , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

Оглавление

|= (составное побитовое ИЛИ)

Описание
Составной побитовый оператор AND &= часто используется с переменной и константой для принудительного перевода определенных битов в переменной в состояние LOW (в 0). В руководствах по программированию это часто называют «очисткой» или «сбросом» бит.
 
Составной побитовый оператор ИЛИ |= часто используется с переменной и константой для установки в 1 определенных битов в переменной.
 
Обзор побитового оператора ИЛИ |:
0 0 1 1 операнд1
0 1 0 1 операнд2
-------
0 0 1 1 (операнд1 & операнд2) - возвращаемый результат


Синтаксис
x |= y; // эквивалент записи x = x | y;

Параметры
x: переменная типа char, int или long
y: целочисленная константа либо переменная типа char, int или long

Пример
Если во втором операнде будут «0», то все исходные биты останутся без изменений.

myByte | B00000000 = myByte;


если во втором операнде будут одни «1», то и все исходные биты тоже поменяются на «1»

myByte | B11111111 = B11111111;


Примечание

Поскольку мы имеем дело с битами в побитовом операторе - удобно использовать двоичное представление константа. Числа по-прежнему имеют одинаковое значение в других представлениях, их просто не так просто понять. Кроме того, B00000000 показан для ясности, но ноль в любом числовом формате равен нулю.

 

Следовательно - чтобы установить биты 0 и 1 переменной, оставив остальную часть переменной без изменений, используйте составной битовый оператор ИЛИ (|=) с константой B00000011

 

1 0 1 0 1 0 1 0 переменная
0 0 0 0 0 0 1 1 маска
---------------
1 0 1 0 1 0 1 1 первые 6 бит остались нетронутыми, 2 последних - были установлены в 1

 

Теперь то же самый пример с битами переменной, замененными символом x

 

x x x x x x x x переменная
0 0 0 0 0 0 1 1 маска
---------------
x x x x x x 1 1 первые 6 бит остались нетронутыми, 2 последних — были установлены в 1

 

Так что если:

myByte = B10101010;
myByte |= B00000011 == B10101011;

Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.

Разное

Интересно

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

Похожие инструкции