Коротка відповідь
У шістнадцятковому (основа 16) використовуються цифри 0-9 і літери A-F, де кожна позиція представляє ступінь 16. FF у шістнадцятковому форматі дорівнює 15×16 + 15 = 255 у десятковому — найбільше значення, яке може вмістити один байт. Програмісти використовують шістнадцятковий код, тому що він точно відображає двійковий код: одна шістнадцяткова цифра завжди дорівнює рівно 4 бітам, тому дві шістнадцяткові цифри представляють повний байт.
Ключові висновки
- Дві шістнадцяткові цифри дорівнюють одному байту (8 біт) — значенню від 00 до FF (0 до 255), тому адреси пам’яті, значення байтів і коди кольорів майже завжди відображаються в шістнадцятковому форматі.
- Перетворення шістнадцяткової у двійкову є механічним: замініть кожну шістнадцяткову цифру її 4-бітним двійковим еквівалентом і з’єднайте їх разом.
- Шістнадцяткова арифметика дотримується тієї ж логіки перенесення та запозичення, що й десяткова арифметика, лише з основою 16 замість 10.
- Веб-кольори (#RRGGBB) упаковують три байти — червоний, зелений, синій — у шість шістнадцяткових цифр, по дві на колірний канал.
Значення шістнадцяткових цифр (0-F)
| Hex | Десятковий | Hex | Десятковий |
|---|---|---|---|
| A | 10 | D | 13 |
| B | 11 | E | 14 |
| C | 12 | F | 15 |
Перетворення десяткового дробу в шістнадцятковий
202 ÷ 16 = 12 остача 10 → A
12 ÷ 16 = 0 залишок 12 → C
Прочитайте залишки знизу вгору: CA
Отже, десяткове число 202 дорівнює шістнадцятковому CA. Перевірка у зворотному порядку: C×16 + A = 12×16 + 10 = 192 + 10 = 202 — підтверджуємо перетворення.
Спрацьований приклад: шістнадцяткове додавання
3A+1F
A (10) + F (15) = 25 = 1×16 + 9 → напишіть 9, перенесіть 1
3 + 1 + перенос 1 = 5
Результат: 59
Перевірка в десятковій системі: 3A = 58, 1F = 31 і 58 + 31 = 89, що дорівнює 5×16 + 9 = 0x59 — точно відповідає шістнадцятковій арифметиці. Єдина справжня відмінність від десяткового додавання полягає в тому, що перенос відбувається, коли стовпець досягає 16, а не 10.
Поширені помилки, яких слід уникати
- Перенесення 10 за звичкою замість 16 — шістнадцятковий стовпець переноситься, коли його значення досягає 16, а не 10, як десяткове.
- Якщо припустити, що одна шістнадцяткова цифра дорівнює одному біту, вона завжди представляє 4 біти, оскільки 16 = 2⁴.
- Відкидання початкового нуля в байті з фіксованою шириною або кольоровому каналі — 0x0A та 0xA є однаковими значеннями, але двозначне відображення байтів очікує 0A, а не A.
- Непослідовне змішування регістру цифр — hex не враховує регістр (a = A = 10), але дотримання одного регістру дозволяє уникнути візуальної плутанини у довших значеннях.
Пов'язані калькулятори
- Двійковий калькулятор — працювати безпосередньо в основі 2 разом із шістнадцятковими перетвореннями.
- Калькулятор великих чисел — обробляти значення, які переростають стандартні шістнадцяткові арифметичні діапазони.
- Калькулятор експонент — перевірте ступінь числа 16 за розрядним значенням кожної шістнадцяткової цифри.
- Базовий калькулятор — обробляти повсякденну десяткову арифметику поза будь-якою конкретною базою.