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

В сети

Пользователей: 54
Из них просматривают:
Аналоги: 8. Видео: 1. Даташиты: 15. Инструкции: 6. Новости: 9. Обзор: 1. Остальное: 2. Ошибки: 1. Программы: 1. Торрент: 1. Форум: 9.
Участников: 2
Гостей: 52

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;

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

Разное

Крупную деталь можно паять и обычным паяльником (25-40 Вт), если разогреть ее, например, на газовой плите.

Интересно

Обработанные водным раствором щелочи стальные контакты (например, батарейного отсека переносной магнитолы или пульта ДУ) никогда не заржавеют.

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