Инструкции

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

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

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

В сети

Пользователей: 132
Из них просматривают:
Аналоги: 76. Видео: 1. Даташиты: 25. Инструкции: 6. Новости: 11. Остальное: 3. Партнёры: 1. Производители: 2. Профиль пользователя: 1. Форум: 6.
Участников: 2
Гостей: 130

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;

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

Разное

Интересно

Хранение мелких крепежных деталей. Для любого радиолюбителя когда-то возникает необходимость иметь какое-то количество - болтиков, винтиков, шайб. Это набора вполне достаточно для любого крепежа. А вот хранить это все - в одном месте - можно в баночках из-под растворимого кофе. В баночках - на 50 гр или 25 чашек. В каждую такую баночку вмещается 3 коробочки из-под монпасье (леденцов). В каждой коробочке из-под леденцов можно хранить достаточное колическо деталей мелкого крепежа. На банке сделать надпись - допустим, М3. Винты, шайбы, гайки.

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