🛝Toolio
О нас Контакты

🧮 Калькулятор программиста

Калькулятор программиста одновременно обрабатывает шестнадцатеричную, десятичную, восьмеричную и двоичную системы, а также битовые операции и фиксированные размеры слов, необходимые для низкоуровневого программирования. Введите значение в любой системе счисления, примените AND, OR, XOR, NOT, сдвиги или арифметические операции на 8, 16, 32 или 64 бита, и получите результат во всех четырёх системах сразу — бесплатно, полностью в вашем браузере, без загрузки данных.

Калькулятор программиста — это бесплатный онлайн-инструмент, который показывает число в шестнадцатеричной, десятичной, восьмеричной и двоичной системах одновременно, а также выполняет битовые операции (AND, OR, XOR, NOT, сдвиги) с фиксированным размером слова 8, 16, 32 или 64 бита — полностью в вашем браузере.

8 16 32 64
HEX0
DEC0
OCT0
BIN0
Биты — нажмите для переключения
AND OR XOR NOT NAND NOR XNOR ± Lsh Rsh Mod
CE AC ÷ A B C × D E F 7 8 9 + 4 5 6 1 2 3 0 =

Tip: use your keyboard — digits, A–F, + − * /, & | ^ ~ for AND/OR/XOR/NOT, Enter for =.

Приватно по умолчанию. Этот инструмент работает полностью в вашем браузере — ничего из введённого не загружается и не сохраняется, и он работает офлайн.

Об инструменте

Калькулятор программиста работает так, как разработчики действительно думают о числах: в битах и байтах, одновременно в нескольких системах счисления. Введите значение в шестнадцатеричной, десятичной, восьмеричной или двоичной системе, и инструмент покажет все четыре представления одновременно, обновляя их в режиме реального времени при вводе. Ниже отображения находится интерактивная таблица битов, которая позволяет увидеть каждый отдельный бит текущего значения и изменить любой из них с одного касания — это незаменимо для создания масок битов, установки флагов или понимания, как устроен регистр.

Калькулятор поддерживает полный набор битовых операций, на которых опирается повседневное системное программирование: AND, OR, XOR, NOT, NAND, NOR, XNOR, а также логические левый и правый сдвиги (Lsh и Rsh) и модуль. Вы также можете выполнять обычные целочисленные арифметические операции — сложение, вычитание, умножение и деление — и брать отрицание значения в дополнительном коде. Каждый результат вычисляется с выбранным размером слова: 8, 16, 32 или 64 бита. Переполнение обрабатывается точно так же, как это делает реальное оборудование с фиксированной шириной, поэтому то, что вы видите, точно соответствует тому, что выдаст ваша программа на C, Rust или Go.

Переключатель «Знак» изменяет десятичное отображение между беззнаковым и интерпретацией в дополнительном коде, а также влияет на поведение деления, модуля и сдвига вправо — деление со знаком усекается к нулю, а сдвиг вправо с сохранением знака, как это делает ваш компилятор. Внутри все вычисления производятся с использованием JavaScript BigInt и маскируются до ширины слова, что означает, что операции с 64 битами точны; встроенные 32-битные битовые операторы, которые молча ломают многие другие веб-калькуляторы, здесь никогда не используются.

Инструмент также полезен и за пределами профессионального программирования. Студенты, изучающие архитектуру компьютеров, могут наблюдать за дополнительным кодом, расширением знака и переполнением по одному биту за раз; любители электроники и встраиваемых систем могут составить точный байт для отправки в регистр устройства; а любой, кто отлаживает шестнадцатеричный дамп, формат файла или пакет сети, может извлечь отдельные поля без обращения к скрипту. Поскольку все системы счисления и биты остаются видимыми одновременно, связь между шестнадцатеричным представлением значения, его битами и его десятичным значением всегда находится перед вами.

Поскольку инструмент ориентирован на низкоуровневую работу, он ускоряет такие распространённые задачи, как преобразование цвета из шестнадцатеричного в десятичные каналы RGB, декодирование разрешений файлов Unix, извлечение полей из упакованного регистра состояния, проверка результата маски битов и проверка выражений сдвига и маскирования перед их фиксацией в коде. Все вычисления выполняются полностью в вашем браузере — никакого сервера, аккаунта и ничего, что вы вводите, не покидает ваше устройство. Ваш размер слова, режим знака и текущее значение сохраняются локально, поэтому калькулятор будет точно таким, как вы его оставили, при следующем использовании.

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

  1. Выберите размер слова — 8, 16, 32 или 64 бита — и включите «Знак», если хотите десятичное представление в дополнительном коде, деление и сдвиги.
  2. Выберите входную систему счисления, нажав на строку HEX, DEC, OCT или BIN, затем введите своё число с помощью клавиатуры или физической клавиатуры.
  3. Примените операцию: нажмите на кнопку битовой операции (AND, OR, XOR, NOT, NAND, NOR, XNOR), сдвиг (Lsh, Rsh), Mod или обычные + − × ÷.
  4. Введите второй операнд и нажмите =, чтобы вычислить; результат появится одновременно в шестнадцатеричной, десятичной, восьмеричной и двоичной системах.
  5. Нажмите на любой бит в таблице битов, чтобы изменить его напрямую, или используйте кнопку копирования на любой строке системы счисления, чтобы скопировать это представление в буфер обмена.

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

Этот программистский калькулятор бесплатный, приватный и работает офлайн?
Да. Он полностью бесплатен без регистрации или входа в систему, а все вычисления выполняются локально в вашем браузере с использованием JavaScript — ничего, что вы вводите, не загружается. После загрузки страницы он работает полностью офлайн.
Как это отличается от конвертера систем счисления?
Конвертер систем счисления меняет только способ записи числа. Программистский калькулятор также выполняет вычисления: он производит битовые логические операции (AND, OR, XOR, NOT), сдвиг битов, модуль и арифметические операции с фиксированным размером слова, а также позволяет проверять и изменять отдельные биты — при этом показывая все четыре системы счисления одновременно.
Что делают размеры слов 8/16/32/64 бит?
Размер слова определяет, сколько бит занимает значение, как целочисленный тип в C, Rust или Go. Результаты маскируются до этого размера, поэтому переполнение оборачивается, а операции, такие как NOT, дают тот же результат, что и ваша программа. Используйте 8 бит для байта, 32 бита для обычного int или 64 бит для long.
Что такое переключатель «Знак» и дополнительный код?
Режим со знаком интерпретирует старший бит как знак с использованием дополнительного кода, представления, почти всеми процессорами. Это меняет десятичное отображение — например, 0xFF в 8 битах отображается как −1 — и делает деление, модуль и сдвиг вправо поведением со знаком. Отключите его для беззнаковых значений, таких как адреса или флаги битов.
Какие битовые операции поддерживаются?
AND, OR, XOR, NOT, NAND, NOR, XNOR, логический левый сдвиг (Lsh), правый сдвиг (Rsh), который логический при беззнаковом и арифметический при знаковом, модуль, отрицание в дополнительном коде (±), а также стандартные операции сложения, вычитания, умножения и деления.
Правильно ли обрабатывает 64-битные значения?
Да. Все математические операции используют JavaScript BigInt и маскируются до выбранного размера слова, поэтому 64-битные операции точны. Это избегает ошибки, присущей многим веб-калькуляторам, которые зависят от встроенных битовых операторов JavaScript, которые молча обрезают до 32 бит.
Можно ли использовать клавиатуру?
Да. Введите цифры и A–F напрямую, используйте + − * / для арифметики, & | ^ ~ для AND/OR/XOR/NOT, < и > для сдвигов, Enter для =, Backspace для удаления и Esc для очистки.
Можете ли вы привести конкретный пример?
Конечно. Чтобы получить красный канал цвета в шестнадцатеричном формате #3A7BD5, выберите 32-битный беззнаковый режим, введите 3A7BD5 в строке HEX, затем вычислите значение Rsh 16 и AND с FF — калькулятор покажет 58 в десятичной системе, что является значением красного канала (зелёный и синий получаются аналогично с другими сдвигами). В качестве другого примера, чтобы проверить, установлен ли бит владельца-выполнение в разрешении Unix 0o755, введите 755 в строке OCT и выполните AND с 100 — результат 100 не равен нулю, значит, бит установлен. Работа с такими случаями одновременно во всех четырёх системах счисления — это именно то, чего не может сделать один только конвертер систем счисления.
Загружает ли этот инструмент мои данные?
Нет. Всё выполняется прямо в вашем браузере, поэтому ваши данные никогда не покидают устройство — после загрузки страницы он работает даже офлайн.