Биты и битовые операции

Биты и битовые операции

Рассмотрим основы работы с битами, битовые маски и флаги. Операции с битами.

Многие наверняка знают о существовании битовых операций таких как &, | и т.д. Но не все понимают, для чего они нужны. Сегодня я попытаюсь объяснить, что такое биты и операции над ними.

Что такое бит?

Это единица измерения информации. 1 бит равен одному разряду в двоичной системе счисления.

Как правильно байт состоит из 8 битов. Раньше были и другие количества битов на байт, но нам это сейчас не важно.

Как уже сказано выше, бит - это один разряд в двоичной системе счисления, а следовательно он может принимать значение 0 или 1.

Операции над битами

& (AND) - И (и там и там бит установлен, значит установлен)

   1000 0110
 & 0010 1100
 = 0000 0100

То есть:
1 и 1 даст 1
1 и 0, 0 и 1, 0 и 0 дадут 0

 

| (OR) - ИЛИ (или там или там установлен, значит установлен)

   1000 0110
 | 0010 1100
 = 1010 1110

1 и 1, 1 и 0, 0 и 1 дадут 1
0 и 0 даст 0

 

^ (XOR) - Исключающие ИЛИ (Если только 1 бит установлен, тогда установлен)

   1000 0110
 ^ 0010 1100
 = 1010 1010

1 и 0, 0 и 1 дадут 1
0 и 0, 1 и 1 дадут 0
Обратите внимание, на то что основное отличие от OR в том что, если сразу оба бита установлены, то в результате мы получим сброшенный бит.

 

~ (NOT) - НЕ (инвертирование) применяется только к 1 числу

 ~ 0010 1100
 = 1101 0011

1 даст 0
0 даст 1
То есть биты меняются на противоположные.

 

<< (SHL) – сдвиг влево, сдвигает биты влево на n позиций, справа добавляются нули

   1000 0110
<< 2
 = 0001 1000

 

>> (SHR) - сдвиг вправо, слева заполняется нулями

   1000 0110
>> 2
 = 0010 0001

 

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

При копировании материалов ссылка на https://terraideas.ru/ обязательна

Комментарии к статье: Биты и битовые операции

Нет ни одного комментария. Будьте первым!