Инструкции

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

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

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

В сети

Пользователей: 310
Из них просматривают:
Аналоги: 53. Видео: 2. Даташиты: 64. Инструкции: 66. Новости: 12. Обзор: 1. Остальное: 4. Партнёры: 2. Программы: 17. Производители: 22. Профиль пользователя: 1. Расчёты: 2. Теги: 15. Форум: 49.
Участников: 2
Гостей: 308

Google , Яндекс , далее...
Рекорд 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;

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

Разное

Интересно

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

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