Коротка відповідь
Двійкова система має основу 2: кожна цифра (біт) дорівнює 0 або 1, і кожна позиція представляє ступінь двійки. 1010 у двійковій системі дорівнює 1×8 + 0×4 + 1×2 + 0×1 = 10 у десятковій системі. Цей калькулятор обробляє двійкову арифметику, порозрядну логіку (І, АБО, XOR, НІ), бітові зрушення та миттєве перетворення в десяткове, шістнадцяткове та вісімкове число.
Ключові висновки
- Значення обмежені 32-розрядним цілим числом зі знаком (від -2 147 483 648 до 2 147 483 647) — двійкові рядки за межами цього діапазону відхиляються, а не мовчки скорочуються.
- Порозрядне AND/OR/XOR порівнює числа порозрядно і не те саме, що арифметичне додавання або множення — 1010 AND 0110 дорівнює 0010, а не 16.
- Зсув ліворуч на n еквівалентний множенню на 2ⁿ; зсув вправо на n еквівалентний цілому (поверховому) діленню на 2ⁿ.
- Кожна шістнадцяткова цифра відповідає рівно 4 двійковим бітам, що робить перетворення шістнадцяткового у двійкове механічним, якщо ви знаєте 16 чотирибітних шаблонів.
Як працює двійкове розрядне значення
Подібно до того, як десяткове розрядне значення використовує степені десяти, двійкове розрядне значення використовує ступені двійки. Читання 8-розрядного числа 10110101 справа наліво:
| 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
|---|---|---|---|---|---|---|---|
| 1 | 0 | 1 | 1 | 0 | 1 | 0 | 1 |
Додайте значення позиції, де є 1: 128 + 32 + 16 + 4 + 1 = 181. Отже, двійкове число 10110101 дорівнює 181 у десятковій системі.
Порозрядні операції проти арифметичних операцій
| Операція | Що воно робить | приклад |
|---|---|---|
| AND (&) | 1 лише тоді, коли обидва біти дорівнюють 1 | 1010 & 0110 = 0010 |
| OR (|) | 1, де будь-який біт дорівнює 1 | 1010 | 0110 = 1110 |
| XOR (^) | 1, де біти відрізняються | 1010 ^ 0110 = 1100 |
| Зсув вліво (<<) | Зсув бітів ліворуч, заповнення 0 (×2ⁿ) | 0011 << 2 = 1100 |
| Правий зсув (>>) | Зсув бітів праворуч (÷2ⁿ, округлено вниз) | 1100 >> 2 = 0011 |
Побітові операції порівнюють або зсувають окремі біти — вони не переносять між позиціями, як це робить додавання, тому 1010 І 0110 потрапляє на 0010 замість чогось, що нагадує суму.
Поширені помилки, яких слід уникати
- Обробка побітового І/АБО так, ніби це арифметичне додавання або множення — вони працюють побітово без переносу.
- Якщо забути 32-розрядне обмеження діапазону зі знаком — двійковий рядок, що містить понад 31 одиницю, перевищить підтримуваний діапазон і поверне помилку.
- Очікуємо, що порозрядне НЕ просто перевертає надруковані цифри — у представленні двох доповнень НЕ додатне число створює негативне, а не просте переміщення цифр.
- Якщо припустити, що зсув вправо обертається — він скорочує (поверхи) до від’ємної нескінченності для від’ємних чисел, отже, 7 >> 1 = 3, а не 3,5 чи 4.
Пов'язані калькулятори
- Шістнадцятковий калькулятор — працювати безпосередньо в шістнадцятковій системі з тими самими перетвореннями та операціями.
- Калькулятор експонент — перевірити степені двійки за кожною бітовою позицією та зсувом.
- Калькулятор великих чисел — вийти за межі 32-бітного діапазону за допомогою арифметики довільної точності.
- Науковий калькулятор — опрацьовувати загальну математику, окрім перетворень за основою чисел.