Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Int result, op1, op2;




op1 = 4;

ор2 = 5;

result = op1 &. op2;

Здесь необходимо принять во внимание двоичное представление операндов op1 и ор2, соответственно 100 и 101. Результат этой операции получается путем сравнения двоичных битов, находящихся в одинаковых позициях в каждом из этих логических представлений:

• Первому слева биту результата присваивается значение 1, если оба крайних левых бита op1 и ор2 равны 1, и значение 0 в противном случае.

• Следующему биту результата присваивается значение 1, если оба следующих бита op1 и ор2 равны 1, и значение 0 в противном случае.

• Так продолжается для всех остальных битов.

То есть в рассмотренных выше примерах действия выглядят таким образом:

 

1 0 0 4 1 0 0 4

& 1 0 1 & 5 ׀ 1 0 1 ׀ 5

1 0 0 4 1 0 1 5

 

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

Бит операнда 1 Бит операнда 2 Бит выполнения операции^
     
     
     
     

В языке С# допускается использование унарного оператора работы с битами , воздействие которого на операнд состоит в инвертировании (изменении) всех его битов таким образом, что все биты, которые были равны 0, получают значение 1, и наоборот/

Бит операнда 1 Бит выполнения операции
   
   

Помимо описанных выше четырех операторов для работы с битами следует рассмотреть еще два оператора. А именно:

Оператор Тип Пример выражения Результат
>> Бинарный varl = var2 >> var3; Переменной varl присваивается значение, которое получается при сдвиге двоичного содержимого переменной var2 вправо на число битов, равное значению переменной var3
<< Бинарный varl = var2 << var3; Переменной varl присваивается значение, которое получается при сдвиге двоичного содержимого переменной var2 влево на число битов, равное значению переменной var3

Работу этих операторов, обычно называемых операторами побитового сдвига, лучше всего проиллюстрировать с помощью небольшого примера:

int var1, var2 = 10, var3 = 2;

var1= var2 << var3;

В этом примере переменной varl будет присвоено значение 40. Действительно, двоичное представление числа 10 — "1010"; после сдвига на две позиции влево оно превратится в "101000" — двоичное представление числа 40.





Поделиться с друзьями:


Дата добавления: 2015-10-01; Мы поможем в написании ваших работ!; просмотров: 303 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Лаской почти всегда добьешься больше, чем грубой силой. © Неизвестно
==> читать все изречения...

3279 - | 3137 -


© 2015-2026 lektsii.org - Контакты - Последнее добавление

Ген: 0.012 с.