ВУЗ:
Составители:
Рубрика:
34
Лабораторная работа №6
ПОРАЗРЯДНЫЕ ОПЕРАЦИИ И БИТОВЫЕ ПОЛЯ
Цель работы: изучить теорию и научиться программировать поразрядные
операции и битовые поля.
Поразрядные операции языка С
Поразрядные операции состоят из четырех основных операций: отрицание,
логическое И, логическое ИЛИ и исключающее ИЛИ. Рассмотрим данные
операции по порядку.
При выполнении операции поразрядного
отрицания все биты, равные 1,
устанавливаются равными 0, а все биты равные нулю, устанавливаются
равными 1. Для выполнения данной операции в языке С++ используется символ
‘~’ как показано в следующем примере:
unsigned char var = 153; //двоичная запись 10011001
unsigned char not = ~var; //результат 01100110 (число 102)
В результате переменная not будет содержать число 102. В ходе выполнения
операции поразрядного И результирующий бит будет равен 1, если оба бита в
соответствующих операндах равны 1, т.е.
10010011 & 00111101 даст результат
00010001.
Для выполнения операции логического И используется символ & следующим
образом:
unsigned char var = 153; //двоичная запись 10011001
unsigned char mask = 0x11; // число 00010001 (число 17)
unsigned char res = var & mask; // результат 00010001
или
var &= mask; // то же самое, что и var = var & mask;
В ходе выполнения двоичной операции ИЛИ результирующий бит
устанавливается равным 1, если хотя бы один бит соответствующих операндов
равен 1. В противном случае, результирующее значение равно 0. Для
выполнения данной логической операции используется символ ‘|’ как показано
ниже:
unsigned char var = 153; //двоичная запись 10011001
unsigned char mask = 0x11; // число 00010001
unsigned char res = var | mask; // результат 10011001
Также допускается применение такой записи
Страницы
- « первая
- ‹ предыдущая
- …
- 32
- 33
- 34
- 35
- 36
- …
- следующая ›
- последняя »
