Системи числення і кодування
Двійкова, вісімкова та шістнадцяткова системи. Кодування інформації.
Двійкова система (Binary)
Ми звикли користуватися десятковою системою числення (цифри 0-9). Але комп'ютери розуміють лише двійкову (binary) систему – 0 і 1. Чому так? Бо комп'ютер складається з мільярдів мікроскопічних перемикачів – транзисторів. Вони можуть бути лише в двох станах: увімкнено (1, є струм) або вимкнено (0, немає струму). Один 0 або 1 – це "біт" (bit, BInary digiT). 8 бітів утворюють 1 байт.
Як перевести з двійкової у десяткову?
У десятковій системі кожна позиція – це ступінь 10 (одиниці, десятки, сотні). У двійковій кожна позиція – це ступінь двійки (1, 2, 4, 8, 16...). Число 1011 у двійковій системі: = 1*8 + 0*4 + 1*2 + 1*1 = 8 + 0 + 2 + 1 = 11 у десятковій! Число 10 – це 2. Число 11 – це 3. Число 100 – це 4.
Шістнадцяткова система (Hexadecimal)
Шістнадцяткова система використовує 16 символів: 0-9 та літери A-F (де A=10, F=15). Її часто використовують розробники, бо вона дозволяє коротко записувати довгі двійкові числа.
- Колір у вебі: #FFFFFF (білий), #FF0000 (червоний)
- MAC-адреси мережевих пристроїв: 00:1A:2B:3C:4D:5E
- Зручно для програмістів: один шістнадцятковий символ відповідає рівно 4 бітам.
Кодування текстів
Комп'ютер не розуміє літер, як він їх відображає? Кожному символу присвоєно унікальний цифровий код. ASCII: стара таблиця (128 символів), вистачало лише для англійського алфавіту та цифр. Наприклад, літера "A" – це код 65. Unicode (UTF-8): сучасний стандарт, що містить понад 140 000 символів з усіх мов світу і навіть емодзі! 😂 має свій унікальний код.
Кодування Base64: Як картинка стає текстом
Base64 – це алгоритм, який перетворює будь-які бінарні дані (зображення, відео, файли) на звичайний текст із 64 символів (A-Z, a-z, 0-9, +, /). Це дозволяє прикріплювати зображення прямо в HTML-код сторінки або надсилати їх як текст у електронних листах.
💡 Історія: Проблема 2000 року (Y2K)
У ранніх комп'ютерах пам'ять була надзвичайно дорогою. Щоб зекономити байти, програмісти кодували рік двома цифрами: "98" замість "1998". Але наближався 2000 рік! "00" комп'ютери могли сприйняти як 1900 рік, що загрожувало крахом банківських і авіаційних систем. Світу довелося витратити близько $300 мільярдів на перепрограмування систем.
Кольори HEX (Шістнадцяткова система)
Як веб-дизайнери передають кольори комп'ютеру? Через систему HEX (Hexadecimal), яка використовує цифри від 0 до 9 і букви від A до F:
- Колір складається з трьох пар: Червоний (Red), Зелений (Green), Синій (Blue) – RGB.
- #000000 – чорний (усі кольори вимкнені: 0).
- #FFFFFF – білий (усі кольори включені на максимум: F).
- #FF0000 – чистий червоний (Червоний на максимум "FF", інші нулі).
- Використання літер дозволяє закодувати величезне число 255 всього ДВОМА символами "FF".
ASCII-арт: малювання текстом
У 80-ті роки монітори не могли відображати повноцінну графіку, лише символи таблиці ASCII. Але художники знайшли вихід! Вони створювали цілі картини, використовуючи лише букви, цифри та розділові знаки (наприклад, @, #, /, \). Тінь передавали символами різної "щільності": літера "M" здавалася темною, а крапка "." – світлою.