Побитовый калькулятор
Выполняйте побитовые операции над целыми числами и просматривайте результаты в десятичном, шестнадцатеричном и двоичном виде.
Как это работает
- Введите два числа: введите значения для операции — в десятичном, двоичном (префикс 0b) или шестнадцатеричном (префикс 0x).
- Выберите операцию: выберите AND, OR, XOR, NOT, сдвиг влево (<<) или сдвиг вправо (>>).
- Просмотрите результат: вывод показывает результат в десятичной, двоичной и шестнадцатеричной формах одновременно с побитовой визуализацией.
Зачем использовать побитовый калькулятор?
Побитовые операции являются фундаментальными в системном программировании, криптографии, разработке игр, графике, сетях и встраиваемых системах. Понимание того, как AND, OR, XOR и сдвиги манипулируют отдельными битами, имеет решающее значение для включения/выключения флагов, упаковки данных и реализации эффективных алгоритмов. Этот калькулятор показывает операцию на уровне битов, чтобы увидеть, как именно затрагивается каждый бит.
Возможности
- Все побитовые операторы: AND (&), OR (|), XOR (^), NOT (~), сдвиг влево (<<) и сдвиг вправо (>>).
- Многоосновный ввод: вводите числа в десятичной, двоичной (0b…) или шестнадцатеричной (0x…) системе.
- Многоосновный вывод: результаты отображаются одновременно в десятичной, двоичной и шестнадцатеричной формах.
- Визуализация битов: визуальная сетка показывает, какие биты активированы для каждого операнда и результата.
- Знаковый/беззнаковый режимы: переключайтесь между 8, 16, 32 и 64-битными целыми числами.
Часто задаваемые вопросы
Для чего нужен XOR в программировании?
XOR (^) используется для инвертирования битов, простого шифрования/обфускации, обмена переменных без временной переменной, проверки чётности и смешивания хэшей. Он возвращает 1, когда биты различаются, и 0, когда они одинаковы.
В чём разница между << и >>?
Сдвиг влево (<<) перемещает все биты влево, что эквивалентно умножению на степени 2. Сдвиг вправо (>>) перемещает биты вправо, что эквивалентно делению на степени 2. Арифметический сдвиг вправо сохраняет знаковый бит; логический сдвиг вправо заполняет нулями.
Как включить или выключить определённый бит?
Чтобы включить бит n: value |= (1 << n). Чтобы выключить бит n: value &= ~(1 << n). Чтобы инвертировать бит n: value ^= (1 << n). Чтобы проверить, активирован ли бит n: (value & (1 << n)) !== 0.