Конвертер систем числення: Decimal, Hex, Base32, Base64
Конвертуйте числа між десятковою системою та Base16 (hex), Base32 і Base64 в обох напрямках із автоматичним визначенням системи числення закодованого значення.
Двонапрямковий конвертер систем числення
Перетворення між десятковими числами та стандартними кодуваннями (Base16/Hex, Base32, Base64). Введіть значення в будь-якому полі для конвертації.
Введіть додатнє ціле число (макс.: 9 007 199 254 740 991)
Введіть значення, закодоване в Base16, Base32 або Base64
Про системи кодування
Документація
Двонапрямковий конвертер систем числення: Decimal ↔ Base16, Base32, Base64
Конвертер систем числення перетворює число з одного способу запису на інший. Комп'ютери, URL-адреси та формати даних рідко зберігають просте десяткове число — вони пакують його у компактніше або безпечніше для передавання кодування, таке як Base16 (шістнадцяткова система), Base32 або Base64. Цей інструмент виконує перетворення в обох напрямках: введіть десяткове число і побачте його форму в Base16/Base32/Base64, або вставте закодоване значення і отримайте десяткове число назад. Він також визначає, у якій системі числення подано закодоване значення.
Що означає «основа»
Кожна позиційна система числення має основу (або радикс) — кількість різних символів, які використовуються для одного розряду. Десяткова система має основу 10 (0–9). Кодування, описані тут, обмінюють більший набір символів на коротший рядок:
- Base16 (Hexadecimal) — символи
0-9таA-F. Кожен символ несе 4 біти. Широко використовується для кольорових кодів (#FF0000), адрес пам'яті та хешів. - Base32 — символи
A-Zта2-7(RFC 4648). Кожен символ несе 5 бітів. Не залежить від регістру і не містить символів, які легко сплутати, тому добре витримує читання вголос або ручне введення. - Base64 — символи
A-Z,a-z,0-9,+та/(RFC 4648). Кожен символ несе 6 бітів. Стандартний спосіб передавати двійкові дані через текстові канали, такі як електронна пошта чи поле JSON.
Що вища основа, то менше символів потрібно для того самого числа — але то більший алфавіт доводиться тримати в голові.
Як користуватися конвертером
Інструмент має два поля і працює з тим, у яке ви вводите дані:
- Десяткове → закодоване. Введіть додатне ціле число в поле десяткового значення. Інструмент одразу покаже значення в Base16, Base32 та Base64.
- Закодоване → десяткове. Вставте значення Base16, Base32 або Base64 у поле закодованого значення. Інструмент визначить систему числення, перевірить символи та поверне десяткове число.
Діапазон і перевірка
Значення обмежені максимальним безпечним цілим числом JavaScript, 9007199254740991 (це 2^53 − 1). Вище цієї межі цілі числа вже не можна подати точно, тому конвертер, який продовжував би обчислення, повертав би непомітно неправильні цифри — натомість інструмент повідомляє про помилку виходу за межі діапазону, а не вгадує. Десяткове значення на вході має бути невід'ємним цілим числом; закодоване значення на вході має містити лише символи, допустимі для його системи числення, інакше інструмент позначить помилку, а не декодує сміття.
Розв'язані приклади
- 255 у десятковій системі. Base16 =
FF, тому що 255 = 15×16 + 15, і обидва розряди —F. Саме тому#FFFFFFозначає білий колір: три байти, кожен на своєму максимумі. - 1000 у десятковій системі. Base16 =
3E8(3×256 + 14×16 + 8 = 1000). - Декодування
FF. Визначається як Base16, декодується в 255. - Байт на максимумі, 8 бітів, у шістнадцятковій системі — це
FF— один шістнадцятковий символ на 4 біти, тобто два символи на байт. Той самий байт потребує довшого рядка в Base32 і доповненої групи в Base64, тому шістнадцяткова система залишається зручним для читання варіантом для коротких значень, як-от кольори чи адреси.
Де використовується кожне кодування
- Base16 — кольори CSS/HTML, MAC- та IPv6-адреси, криптографічні хеші та контрольні суми, шістнадцяткові дампи двійкових файлів.
- Base32 — секретні ключі TOTP/2FA, деякі системи обміну файлами та DNS-системи, ідентифікатори, які вводять вручну або вимовляють уголос, де важливо уникати плутанини регістру та символів.
- Base64 — URI типу
data:, вкладення електронної пошти (MIME), вбудовування зображень чи сертифікатів у JSON або XML, токени JWT.
Оскільки кожне кодування є лише способом подання того самого числа, перетворення між ними ніколи не змінює значення — лише те, скільки символів потрібно для його запису та якими каналами воно може безпечно передаватися.