Побитовый калькулятор
FreeВыполняйте операции AND, OR, XOR, NAND, NOR, XNOR, NOT и сдвига битов над двоичными, восьмеричными, десятичными или шестнадцатеричными числами.
Побитовая операция
Недавняя активность
Видно всем. Последние 20 использований от всех посетителей, сначала новые.
AND → 88
1 день назад
Что делает этот инструмент
Выполняет побитовые логические операции - AND, OR, XOR, NAND, NOR, XNOR, NOT - а также сдвиги влево/вправо над числами, которые вы вводите в двоичном, восьмеричном, десятичном или шестнадцатеричном формате. Выберите фиксированную разрядность или позвольте определить её автоматически, и увидите результат во всех форматах вместе с визуальной побитовой разбивкой.
Как это работает
Каждое введённое значение преобразуется в необработанный битовый шаблон фиксированной ширины: двоичный, восьмеричный и шестнадцатеричный ввод читаются как буквальные битовые шаблоны, а десятичный ввод кодируется с помощью дополнения до двух, если отрицательный (значение + 2^ширина), или используется напрямую, если неотрицательный. Затем выбранная операция применяется побитово по всей этой ширине, например AND устанавливает каждый выходной бит в 1 только там, где оба входных бита равны 1, XOR устанавливает его в 1 только там, где входные биты различаются, а NOT инвертирует каждый бит. Сдвиги перемещают битовый шаблон влево или вправо на N позиций, при этом сдвиг влево и логический сдвиг вправо заполняют освободившиеся биты нулями, а арифметический сдвиг вправо заполняет их копией знакового бита. Результат затем считывается обратно в двоичном, восьмеричном, шестнадцатеричном виде, а также в десятичном без знака (необработанное значение) и десятичном со знаком (интерпретация дополнения до двух).
Какие проблемы решает
- Вычисление битовых масок и комбинаций флагов при написании низкоуровневого кода, встроенного ПО или сетевой логики (маски подсети, флаги разрешений).
- Проверка того, как ведут себя отрицательные числа в дополнении до двух и сдвиги битов при определённой разрядности без обращения к компилятору.
- Преобразование значения между двоичным, восьмеричным, десятичным и шестнадцатеричным форматами с одновременным просмотром его побитового отношения к другому значению.
Часто задаваемые вопросы
›В чём разница между AND, OR и XOR?
AND возвращает 1 только когда оба бита равны 1 (полезно для маскирования, например, проверки установки определённого флага). OR возвращает 1, когда хотя бы один бит равен 1 (полезно для объединения флагов). XOR возвращает 1, когда биты отличаются, что делает его полезным для переключения битов или обнаружения изменений между двумя значениями.
›Что на самом деле делает настройка разрядности?
Она фиксирует, сколько битов используется для представления ваших чисел (8, 16, 32 или 64), что влияет на две вещи: как кодируются отрицательные числа (дополнение до двух переполняется при выбранной разрядности) и где отбрасываются биты при сдвиге влево. «Авто» выбирает наименьшую стандартную разрядность, способную вместить оба введённых значения без ошибки переполнения.
›Почему я вижу два разных десятичных результата (со знаком и без знака)?
Необработанный битовый шаблон сам по себе неоднозначен: он может представлять либо небольшое положительное число без знака, либо отрицательное число в дополнении до двух, в зависимости от того, как вы намерены его использовать. Например, при 8-битной разрядности шаблон 11111111 равен 255 без знака, но -1 со знаком. Обе интерпретации показаны, чтобы вы могли выбрать ту, которая соответствует вашему контексту.
›В чём разница между логическим и арифметическим сдвигом вправо?
Логический сдвиг вправо (>>>) всегда заполняет освободившиеся крайние левые биты нулями, независимо от знака. Арифметический сдвиг вправо (>>) вместо этого заполняет их копией исходного знакового бита, поэтому сдвиг отрицательного числа (в дополнении до двух) вправо сохраняет его отрицательным, фактически деля его на степень двойки с округлением к отрицательной бесконечности.
›Могу ли я смешивать числовые форматы, например, применить AND к шестнадцатеричному значению и десятичному значению?
Да. Значение A и Значение B имеют независимые селекторы Дес/Дв/Окт/Шестн, поэтому вы можете ввести одно в шестнадцатеричном формате, а другое в десятичном (или в любой комбинации), и инструмент преобразует оба в одинаковую разрядность перед их объединением.
Похожие инструменты
Калькуляторы
Двоичный калькулятор
Складывайте, вычитайте, умножайте и делите двоичные числа напрямую, с результатами в двоичном и десятичном виде, плюс конвертер двоичное/десятичное.
FreeКалькуляторы
Калькулятор времени донации крови
Рассчитайте следующую подходящую дату сдачи крови на основе вашей последней донации и типа донации, используя общие рекомендации по периоду ожидания.
FreeКалькуляторы
Конструктор диаграммы размаха (box-plot)
Превратите один или несколько наборов данных в ящичные диаграммы с пятизначной сводкой, средним, стандартным отклонением и обнаружением выбросов.
FreeКалькуляторы
Калькулятор обмена 1031
Оцените отложенную и налогооблагаемую прибыль при обмене недвижимости по правилу 1031, с разбивкой возврата амортизации против налога на прирост капитала и трекером сроков 45/180 дней. Бесплатно, приватно, работает в браузере.
Комментарии (0)
Понравился инструмент? Оставьте комментарий, поделитесь советом или расскажите, как нам его улучшить.
Пока нет комментариев. Будьте первым, кто поделится мнением!