Инструкции

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

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

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

В сети

Пользователей: 166
Из них просматривают:
Аналоги: 63. Видео: 1. Даташиты: 50. Инструкции: 4. Магазин: 1. Новости: 5. Остальное: 4. Производители: 1. Профиль пользователя: 27. Расчёты: 1. Форум: 9.
Участников: 2
Гостей: 164

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

Партнёры


Партнёры

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

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

^= (составной побитовый 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 В после непродолжительной эксплуатации произойдет его расформовка, и емкость его значительно уменьшится.

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