Конвертер систем счисления

Перевод целых чисел между двоичной, восьмеричной, десятичной и шестнадцатеричной системами через BigInt. До 4096 цифр, со знаком, без потери точности.

До 4096 значащих цифр. Знак +/−, префикс и ведущие нули не входят в лимит. Допустимы крайние пробелы и префикс 0b/0o/0x только для выбранного основания. Внутренние пробелы запрещены.

Примеры (DEC):

BIN (2)

OCT (8)

DEC (10)

HEX (16)

Последние переводы

В истории — сводка (основание и длина ввода), сами числа и результаты не сохраняются. Основание восстанавливается кнопкой «В закладки».

Готовые примеры

Найдено: 4 из 4

Точный перевод целых чисел

Парсинг и форматирование выполняются через BigInt: 9007199254740993 (выше Number.MAX_SAFE_INTEGER) не округляется. Например, 255 DEC = ff HEX = 377 OCT = 11111111 BIN.

Только целые числа: без дробей, экспоненциальной записи и IEEE-754. Отрицательные результаты имеют знак «-», а не дополнительный код. Ноль и -0 выводятся как 0. В HEX регистр ввода не важен; вывод — строчными буквами.

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

Что это и как пользоваться

Конвертер переводит целые числа между основаниями 2, 8, 10 и 16, показывая все четыре записи сразу. Считает он на BigInt, поэтому 9007199254740993 — число, которое не влезает в double без потери точности, — переводится ровно, а не «примерно».

Четыре записи видны одновременно, поэтому не нужно переключать основание, чтобы сравнить: 255 — это 11111111 в двоичной, 377 в восьмеричной и ff в шестнадцатеричной.

Префиксы 0b, 0o и 0x понимаются, но должны совпадать с выбранным основанием: 0xff при основании 16 разбирается, а 0xff при основании 10 — ошибка, а не молчаливое угадывание.

Двоичная запись группируется по четыре бита в hex-цифру, поэтому 0xff00 — это 1111111100000000, и по такой записи сразу видно, что старший байт заполнен, а младший пуст.

Знак минус переносится во все записи, ведущие нули отбрасываются, а длина ограничена 4096 значащими цифрами — этого хватает и на криптографические числа, и на длинные идентификаторы.

Ошибка в цифре указывает позицию: видно, какой именно символ не принадлежит алфавиту выбранного основания.

Когда пригодится

  • Разобрать битовую маску: перевести 0xff00 в двоичное и увидеть, какие биты выставлены.
  • Прочитать адрес или цвет: hex → десятичное для проверки в коде.
  • Проверить потерю точности: увидеть, как выглядит число за пределом 2⁵³ в разных системах.
  • Перевести права доступа: 0o755 → 493, когда нужна десятичная форма.
  • Проверить маску прав или флагов, не считая биты в уме по hex-записи.
  • Перевести номер цвета в десятичное, когда API принимает только число, а макет задан в hex.
  • Посмотреть, как выглядит отрицательное число в двоичной записи, прежде чем считать дополнительный код вручную.

Чего инструмент не делает

  • Только целые: дробная часть и экспоненциальная запись отклоняются как нецелое значение.
  • Оснований ровно четыре: base32, base36 и base58 не поддерживаются.
  • Арифметика не выполняется: страница переводит одно значение, а не складывает числа в разных системах.
  • Отрицательные числа не переводятся в дополнительный код: минус остаётся знаком, а не старшим битом.
  • Разделители разрядов не поддерживаются: пробелы и подчёркивания внутри числа нужно убрать.
  • Регистр букв в hex не важен: FF и ff дают одно и то же число.

Примеры

Вход
                    0xff
                  
Выход
                    255 (десятичное), 11111111 (двоичное), 377 (восьмеричное)
                  
Вход
                    9007199254740993
                  
Выход
                    100000000000000000000000000000000000000000000000000001 (двоичное)