Комп’ютери не мислять словами. Вони навіть не мислять числами так, як це ми робимо. Вони працюють фундаментальною мовою, що складається всього з двох символів: 0 та 1. Це двійкова система, що є основою усієї сучасної цифрової технології. Кожне зображення, яке ви перегортаєте, кожне повідомлення, яке ви надсилаєте, і кожен рядок коду, який ви пишете, зрештою зводяться до цих двох станів.
Ці символи називаються бітами (скорочення від “binary digits” – двійкові цифри). Усередині апаратного забезпечення вашого пристрою біт є фізичною реальністю. Він або увімкнений, або вимкнений. Істина чи брехня. Висока чи низька напруга. Немає жодного проміжного стану. Ця двійкова логіка дозволяє електронним пристроям обробляти дані з високою точністю, перетворюючи абстрактну інформацію на конкретні електричні сигнали.
Чому комп’ютери використовують систему числення з основою 2
Ми, люди, покладаємось на десяткову систему. Вона має основу 10. Ми використовуємо цифри від 0 до 9. Це здається природним, тому що у нас десять пальців. Комп’ютери, однак, мають труднощі з розрізненням десяти різних станів. Набагато простіше і надійніше проектувати схеми, які розрізняють лише два стани.
Обидві системи є позиційними. Це означає, що значення цифри залежить виключно від її положення у послідовності.
Візьмемо десяткове число 23. Цифра “2” – це не просто двійка. Вона перебуває у розряді десятків. Вона є 2, помножене на 10 у ступені 1, що дорівнює 20. Цифра «3» знаходиться в розряді одиниць. Це 3, помножене на 10 ступенем 0, що дорівнює 3. Склавши їх, ми отримуємо 23.
Двійкова система працює за тим же принципом, але використовує основу 2. Позиції є ступенями двійки, а не десятки. Цей зсув критично важливий. Він змінює те, як ми обчислюємо значення, але не те, як зберігаємо інформацію.
Від бітів до байтів
Один біт – це мало. Один окремий 0 або 1 майже не має сенсу сам собою. Щоб подавати складні дані, комп’ютери групують біти разом.
Стандартною одиницею є байт. Один байт дорівнює 8 біт. За допомогою 8 біт можна створити 256 унікальних комбінацій (від 00000000 до 11111111). Цей діапазон достатньо для кодування кожної літери алфавіту, цифр, розділових знаків і спеціальних символів.
Такі системи, як ASCII або UTF-8 використовують ці значення байтів для зіставлення конкретних символів. Коли ви набираєте літеру «A», комп’ютер не зберігає зображення літери A. Він зберігає двійкову послідовність, яка переводиться в десяткове число 65. Це число вказує на екран, які саме пікселі потрібно запалити.
Перетворення двійкового числа на десяткове
Якщо ви хочете зрозуміти, як двійкові числа перетворюються на значення, які ми розпізнаємо, вам доведеться виконати деякі математичні дії. Ви не вгадуєте. Ви обчислюєте позиційні значення.
Щоб перетворити двійкове число на десяткове, ви множите кожну цифру на 2 ступеня, що відповідає її позиції. Ви починаєте праворуч, яка є позицією 0, і рухаєтеся вліво.
Давайте розберемо двійкове число 1011.
- Найправіша цифра – 1. Вона знаходиться в позиції 0. Отже, 1×2⁰ = 1.
- Наступна цифра – 1. Вона знаходиться в позиції 1. Отже, 1×2¹ = 2.
- Наступна цифра – 0. Вона знаходиться в позиції 2. Отже, 0×2² = 0.
- Найлівіша цифра — 1. Вона знаходиться в позиції 3. Отже, 1×2³ = 8.
Тепер складемо результати: 8+0+2+1=11.
Двійкова послідовність 1011 – це точно десяткове число 11.
Перетворення десяткового числа на двійкове
Зворотний процес такий самий простий. Він включає розподіл і залишки. Щоб перетворити десяткове число на двійкове, ви ділите число на 2 багаторазово. Ви записуєте залишок щоразу. Потім ви читаєте ці залишки у зворотному порядку.
Давайте перетворимо десяткове число 11 назад у двійкове.
- 11, ділене на 2, дорівнює 5, із залишком 1.
- 5, ділене на 2, дорівнює 2, із залишком 1.
- 2, поділене на 2, дорівнює 1, с
























