Подключиться через MCP →

Введите расчет

Математическая формула

Реклама

Результатов

A | B (побитовое ИЛИ)
6
результат в десятичном виде
Операнд A 4
Операнд B 2
A | B 6

Что такое калькулятор побитового ИЛИ?

Этот калькулятор вычисляет побитовое ИЛИ двух целых чисел — операцию, которая в большинстве языков программирования записывается как a | b. ИЛИ сравнивает два числа бит за битом: в результате каждый бит равен 1, если хотя бы один (или оба) из соответствующих исходных битов равен 1, и равен 0 только тогда, когда оба бита равны 0.

Как пользоваться

Введите первое целое число (A) и второе целое число (B), а затем посмотрите результат в десятичном виде. Поддерживаются как положительные, так и отрицательные целые числа. На вход и на выход калькулятор работает в десятичной системе (по основанию 10), но внутри каждое значение обрабатывается в его двоичном представлении.

Разбор формулы

Операция выполняется для каждого бита по таблице истинности ИЛИ:

$$\text{Result} = \text{A} \mathbin{|} \text{B}$$

\(0|0=0\), \(0|1=1\), \(1|0=1\), \(1|1=1\). Например, возьмём A = 12 и B = 10. В двоичном виде 12 = 1100, а 10 = 1010. Выровняв числа и применив ИЛИ к каждому столбцу, получаем 1110, что в десятичной системе равно 14. То есть\(12 \mathbin{|} 10 = 14\).

Bitwise OR of two binary numbers shown column by column producing a result row
Bitwise OR compares each bit position: the result bit is 1 if either input bit is 1.

Разбор примера

Допустим, нужно вычислить \(5 \mathbin{|} 3\). В двоичном виде 5 = 101, а 3 = 011. Применяем ИЛИ к каждому биту: \(1|0=1\), \(0|1=1\), \(1|1=1\) — получаем 111 = 7. Калькулятор вернёт 7.

Truth table grid for the OR operation of two single bits
OR truth table: the output is 0 only when both inputs are 0.

Частые вопросы

Побитовое ИЛИ — это то же самое, что сложение? Нет. В ИЛИ нет переноса разряда. \(1|1\) остаётся 1, тогда как \(1+1\) в двоичной системе даёт перенос и получается 10. Совпадают они только тогда, когда у операндов нет общих установленных битов.

А как насчёт отрицательных чисел? Отрицательные целые числа представляются в дополнительном коде (two's complement), поэтому ИЛИ для них работает по тем же правилам, в том числе и для знаковых битов.

Зачем нужна операция ИЛИ? ИЛИ часто используют, чтобы установить (включить) определённые биты или объединить значения флагов — например, при слиянии масок прав доступа.

Справочник распространённых значений побитового ИЛИ

В таблице ниже приведены значения \(A \mathbin{|} B\) для каждой пары малых операндов от 0 до 8. Прочитайте строку для A и столбец для B; ячейка содержит десятичный результат.

| 0 1 2 3 4 5 6 7 8
0 0 1 2 3 4 5 6 7 8
1 1 1 3 3 5 5 7 7 9
2 2 3 2 3 6 7 6 7 10
3 3 3 3 3 7 7 7 7 11
4 4 5 6 7 4 5 6 7 12
5 5 5 7 7 5 5 7 7 13
6 6 7 6 7 6 7 6 7 14
7 7 7 7 7 7 7 7 7 15
8 8 9 10 11 12 13 14 15 8

Диагональ (где A = B) всегда возвращает сам операнд, так как x | x = x.

Побитовое ИЛИ — это стандартный способ объединения флагов прав доступа. Распространённые биты прав доступа в стиле Unix: чтение = 4 (100), запись = 2 (010), исполнение = 1 (001):

Комбинация Выражение Десятичное Двоичное
Чтение + Запись 4 | 2 6 110
Чтение + Исполнение 4 | 1 5 101
Запись + Исполнение 2 | 1 3 011
Чтение + Запись + Исполнение (rwx) 4 | 2 | 1 7 111
Два байта объединены 240 | 15 255 11111111

Ключевые термины

Бит
Наименьшая единица цифровых данных, содержащая одно двоичное значение: либо 0, либо 1. Группа из 8 битов образует байт.
Установленный / неустановленный бит
Установленный бит имеет значение 1; неустановленный (или очищенный) бит имеет значение 0. Побитовое ИЛИ обычно используется для установки определённых битов без нарушения других.
Битовая маска
Целое число, чей битовый паттерн выбран для выделения, установки или очистки определённых битов в другом значении. ИЛИ значения с маской приводит к установке каждого бита, который установлен в маске, в результате.
Флаг
Отдельный бит (часто получающий названную константу), используемый для представления параметра включено/выключено. Несколько флагов упаковываются в одно целое число и объединяются с помощью ИЛИ, например READ | WRITE.
Дополнение до двух
Стандартный способ представления знаковых целых чисел компьютером. Наиболее значимый бит имеет отрицательный вес, поэтому n-битовое число находится в диапазоне от \(-2^{n-1}\) до \(2^{n-1}-1\). Например, \(-1\) хранится как все единицы.
Наиболее / наименее значимый бит (MSB / LSB)
MSB — это самый левый бит, несущий наибольшее значение разряда (и знак в дополнении до двух); LSB — это самый правый бит со значением разряда \(2^0 = 1\).
Десятичная против двоичной системы
Десятичная (по основанию 10) — это повседневная система счисления, использующая цифры 0–9. Двоичная (по основанию 2) использует только 0 и 1, где каждая позиция соответствует степени двойки. Побитовые операции действуют на двоичное представление, тогда как этот калькулятор отображает результат в десятичной системе.
Последнее обновление: