Инструкции

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

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

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

В сети

Пользователей: 175
Из них просматривают:
Аналоги: 68. Даташиты: 56. Инструкции: 4. Магазин: 1. Новости: 14. Остальное: 1. Ошибки: 2. Программы: 1. Советы: 1. Форум: 26. Чат: 1.
Участников: 5
Гостей: 170

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

Партнёры


Партнёры

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

В настоящее время нет объявлений.
Оглавление

^= (составной побитовый XOR)

Описание
Составной побитовый оператор XOR ^= часто используется с переменной и константой для переключения (инвертирования) определенных битов в переменной.
 
Обзор побитового оператора XOR ^:
0 0 1 1 operand1
0 1 0 1 operand2
-------
0 1 1 0 (operand1 ^ operand2) - возвращенный результат


Синтаксис
x ^= y; // эквивалентно выражению x = x ^ y;

Параметры
x: переменная. Допустимые типы данных: int, long.

y: переменная или константа. Допустимые типы данных: int, long.
 
Примеры

myByte ^ B00000000 = myByte;

myByte ^ B11111111 = ~myByte;


Примечание

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

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

 

1 0 1 0 1 0 1 0  переменная

0 0 0 0 0 0 1 1  маска

---------------

1 0 1 0 1 0 0 1  первые 6 без изменений. последние 2 - инвертированы

 

Здесь то же самое представление с битами переменных, замененными символом x. ~ x представляет собой дополнение к x.

 

x x x x x x x x переменная

0 0 0 0 0 0 1 1 маска

---------------

x x x x x x~x~x первые 6 без изменений. последние 2 - инвертированы

 

Так что

myByte = B10101010;
myByte ^= B00000011 == B10101001;

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

Разное

Канифоль можно изготовить самому, собрав в лесу сосновую (не еловую!) смолу и перетопив ее в консервной банке.

Интересно

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

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