Конвертер систем счисления онлайн
Конвертируйте числа между двоичной, восьмеричной, десятичной и шестнадцатеричной системами.
Использовано: — раз
Системы счисления
Система счисления — это способ записи чисел с помощью определённого набора символов (цифр). В повседневной жизни мы используем десятичную систему (0-9). В программировании и электронике часто встречаются двоичная (0-1), восьмеричная (0-7) и шестнадцатеричная (0-9, A-F).
Двоичная — основа цифровой электроники. Процессор компьютера работает только с 0 и 1. Один бит — одна двоичная цифра.
Шестнадцатеричная — удобная запись двоичных данных. Один hex-символ = 4 бита.
Используется в CSS-цветах (#FF0000), IP-адресах, отладке.
Для форматирования JSON используйте JSON форматтер. Для кодирования данных — Base64.
Системы счисления в программировании
Программисты ежедневно работают минимум с четырьмя системами счисления, иногда даже не задумываясь об этом.
Двоичная (base-2). Основа цифровой электроники. Процессор оперирует
битами — нулями и единицами. Знание двоичной системы помогает понять, как работают
побитовые операции (&, |, ^, <<),
маски подсетей, флаги в протоколах и форматах файлов. Например, права доступа
rwx в Unix — это три бита: чтение (4), запись (2), выполнение (1).
Восьмеричная (base-8). Каждая восьмеричная цифра — ровно 3 бита.
В Unix-системах права файлов записываются в восьмеричной: chmod 755 означает
rwxr-xr-x (владелец — всё, остальные — чтение и выполнение).
В C и PHP восьмеричные литералы начинаются с нуля: 0755.
Шестнадцатеричная (base-16). Одна hex-цифра = 4 бита, два hex-символа = 1 байт.
Это самая компактная и читаемая запись двоичных данных. CSS-цвета (#FF5733),
MAC-адреса (AA:BB:CC:DD:EE:FF), адреса памяти в отладчике, UUID, SHA-хеши —
всё это hex.
Десятичная (base-10). Привычная людям система. В коде используется по умолчанию.
Но при работе с байтами и битами десятичная запись неудобна: число 255 не кричит
«все биты единицы», а 0xFF или 11111111 — кричит.
Как конвертировать вручную
Понимание алгоритма полезно, даже если вы используете конвертер. Два основных метода:
Десятичная в двоичную (деление). Делите число на 2 и записывайте остатки.
Пример для числа 42: 42/2 = 21 (остаток 0), 21/2 = 10 (остаток 1), 10/2 = 5 (остаток 0),
5/2 = 2 (остаток 1), 2/2 = 1 (остаток 0), 1/2 = 0 (остаток 1). Читаем остатки
снизу вверх: 101010.
Двоичная в десятичную (позиционная запись). Каждый бит умножается на
степень двойки. Для 101010: 1×32 + 0×16 + 1×8 + 0×4 +
1×2 + 0×1 = 42.
Hex и двоичная. Самый простой переход — каждая hex-цифра заменяется
на 4 бита. F = 1111, A = 1010.
Поэтому 0xFF = 11111111, а 0x2A = 00101010 = 42.
В JavaScript конвертация встроена: parseInt('FF', 16) переведёт hex в десятичную,
а (255).toString(2) — десятичную в двоичную.
Применение в повседневной разработке
Вот конкретные задачи, где понимание систем счисления экономит время:
CSS-цвета. #FF5733 — это RGB: красный FF (255), зелёный 57 (87),
синий 33 (51). Зная hex, вы можете прикинуть цвет в уме: #000000 — чёрный,
#FFFFFF — белый, #FF0000 — чистый красный.
Unix-права. chmod 644: владелец — чтение+запись (6 = 110),
группа и остальные — только чтение (4 = 100). Числа 4, 2, 1 — это степени двойки
для rwx-битов.
IP-адреса. IPv4-адрес 192.168.1.1 — четыре десятичных числа
(октета), каждое от 0 до 255 (1 байт). Маска /24 означает 24 единичных бита:
11111111.11111111.11111111.00000000 = 255.255.255.0.
Отладка и дампы. Hex-дампы файлов, сетевых пакетов, содержимого памяти —
всё в шестнадцатеричной. Утилиты xxd, hexdump,
Wireshark показывают данные в hex.
Для кодирования двоичных данных в текстовый формат используйте Base64. А для форматирования конфигурационных файлов — JSON форматтер.
Примеры конвертации
| Десятичная | Двоичная | Восьмеричная | Hex |
|---|---|---|---|
| 0 | 0 | 0 | 0 |
| 10 | 1010 | 12 | A |
| 42 | 101010 | 52 | 2A |
| 255 | 11111111 | 377 | FF |
| 1024 | 10000000000 | 2000 | 400 |
Встроить конвертер на свой сайт
Скопируйте код и вставьте на свою страницу:
Часто задаваемые вопросы
Введите число в поле «Десятичная» — двоичное значение появится мгновенно. Например, 255 в двоичной = 11111111.
Двоичная (2), восьмеричная (8), десятичная (10) и шестнадцатеричная (16). Ввод можно делать в любом из четырёх полей.
Hex-система использует цифры 0-9 и буквы A-F. Одна hex-цифра кодирует 4 бита. Широко используется в CSS-цветах (#FF0000), адресах памяти, MAC-адресах.
Конвертер работает с неотрицательными целыми числами. Для отрицательных используется дополнительный код, который выходит за рамки простой конвертации.
JavaScript безопасно работает с целыми числами до 2^53 - 1 (9 007 199 254 740 991). Для больших чисел результат может быть неточным.