Побитовый калькулятор — операции AND, OR, XOR, NOT и сдвиги
Мгновенно выполняйте побитовые логические операции над целыми числами с вводом и выводом в десятичном, двоичном и шестнадцатеричном виде.
Выберите операцию и введите значения в десятичном, двоичном или шестнадцатеричном формате, чтобы вычислить побитовый результат.
Побитовый калькулятор — операции AND, OR, XOR, NOT и сдвиги
Мгновенно выполняйте побитовые логические операции над целыми числами с вводом и выводом в десятичном, двоичном и шестнадцатеричном виде.
О побитовом калькуляторе
Побитовые операции — это базовые вычислительные операции, которые работают непосредственно с двоичным представлением целых чисел. Вместо того чтобы рассматривать число как одно значение, побитовые операторы проверяют и изменяют каждый бит отдельно. Такой низкоуровневый контроль делает их незаменимыми в системном программировании, встраиваемой разработке, криптографии и критичных к производительности алгоритмах.
Операция AND (&) даёт 1 в каждой позиции, где оба операнда имеют 1. Её часто используют для маскирования отдельных битов — например, `value & 0xFF` извлекает только младшие 8 бит любого целого числа. Операция OR (|) устанавливает бит в 1, если он установлен хотя бы у одного из операндов, поэтому полезна для объединения флагов и установки конкретных битов. Операция XOR (^) выдаёт 1 только тогда, когда два входных бита различаются, что делает её удобной для переключения битов, проверки равенства и некоторых алгоритмов шифрования.
Операция NOT (~) инвертирует все биты операнда. В модели 32-битных знаковых целых JavaScript `~n` эквивалентно `-(n + 1)`. Для наглядности результат отображается как беззнаковая 32-битная двоичная строка. Сдвиг влево (<<) перемещает все биты влево на указанное число позиций, что эквивалентно умножению на степени двойки. Сдвиг вправо (>>>) перемещает биты вправо, что эквивалентно целочисленному делению на степени двойки.
На современном оборудовании побитовые операции выполняются за один такт процессора, поэтому они значительно быстрее эквивалентных арифметических операций. Именно поэтому они часто используются в хэш-функциях, алгоритмах контрольных сумм, упаковке цветов в графике (хранение каналов RGBA в одном 32-битном целому), флагах прав доступа в операционных системах и реализациях сетевых протоколов.
Этот калькулятор принимает ввод в десятичном (основание 10), двоичном (основание 2) или шестнадцатеричном (основание 16) виде и одновременно возвращает результаты во всех трёх форматах, чтобы можно было сверять представления без ручного преобразования. Все вычисления используют побитовую семантику JavaScript для 32-битных целых, соответствующую спецификации ECMAScript.
Примеры побитовых операций
Типовые примеры побитовых операций с входными значениями и результатами в десятичном и двоичном виде.
| Операция | Результат (десятичный) | Двоичное представление |
|---|---|---|
| 12 AND 10 | 8 | 1100 & 1010 = 1000 |
| 12 OR 10 | 14 | 1100 | 1010 = 1110 |
| 12 XOR 10 | 6 | 1100 ^ 1010 = 0110 |
| NOT 5 | -6 | ~00000101 = 11111010 (знаковое 32-битное) |
| 3 LEFT SHIFT 2 | 12 | 011 << 2 = 1100 (умножение на 4) |
| 24 RIGHT SHIFT 3 | 3 | 11000 >>> 3 = 00011 (деление на 8) |
Как пользоваться побитовым калькулятором
- Выберите нужную побитовую операцию: AND, OR, XOR, NOT, сдвиг влево или сдвиг вправо.
- Выберите формат ввода, соответствующий вашим числам: десятичный, двоичный или шестнадцатеричный.
- Введите первое число в поле «Первое число» в выбранном формате.
- Для бинарных операций (AND, OR, XOR, сдвиги) введите второе число или величину сдвига в поле «Второе число / Величина сдвига».
- Нажмите «Вычислить», чтобы увидеть результат одновременно в десятичном, двоичном и шестнадцатеричном виде.
FAQ по побитовому калькулятору
Что такое побитовая операция AND?
Побитовая операция AND сравнивает каждую пару соответствующих битов двух чисел и выдаёт 1 только если оба бита равны 1, иначе 0. Например, 12 AND 10 в двоичном виде — это 1100 & 1010 = 1000, что равно 8 в десятичном виде. Её часто используют для маскирования или извлечения определённых битов.
Как работает побитовый XOR?
Побитовый XOR (исключающее ИЛИ) выдаёт 1, когда два входных бита различаются, и 0, когда они одинаковы. Например, 12 XOR 10 — это 1100 ^ 1010 = 0110 = 6. XOR широко используется в шифровании, контрольных суммах и для переключения отдельных битов без влияния на остальные.
Что делает операция NOT с числом?
Побитовая NOT (~) инвертирует все биты операнда. В 32-битной знаковой арифметике ~n равно -(n + 1). Поэтому ~5 = -6, а ~0 = -1. В этом калькуляторе результат показывается как беззнаковая 32-битная двоичная строка, чтобы было видно все инвертированные биты.
Чем отличаются сдвиг влево и сдвиг вправо?
Сдвиг влево (<<) перемещает все биты в сторону старших разрядов на указанное число позиций, заполняя освободившиеся места нулями. Это эквивалентно умножению на 2 в степени величины сдвига. Сдвиг вправо (>>>) перемещает биты в сторону младших разрядов и заполняет нулями, что эквивалентно целочисленному делению на степени двойки.
Когда стоит использовать шестнадцатеричный ввод?
Шестнадцатеричный формат удобен при работе с адресами памяти, кодами цветов (например, 0xFF0000 для красного), сетевыми масками или любыми значениями, которые обычно записываются в hex в документации или исходном коде. Каждый шестнадцатеричный символ представляет ровно 4 бита, что делает запись компактной и читаемой.
Почему побитовые операции важны в программировании?
Побитовые операции выполняются за один такт CPU, поэтому они очень быстрые. Они необходимы в системном программировании для настройки аппаратных регистров, в графике для упаковки цветов RGBA, в криптографии для алгоритмов шифрования и в разработке игр для компактного хранения флагов. Их понимание — основа компьютерных наук.