Системы счисления, родственные двоичной - Урок информатики для 8 класса
📚 Информатика 8 класс

Системы счисления, родственные двоичной

Сейчас мы узнаем, как компьютеры научились говорить на нескольких языках одновременно! Представь: двоичная система — это как очень длинное сообщение из одних нулей и единиц. Неудобно, правда? Поэтому программисты придумали системы-переводчики — восьмеричную и шестнадцатеричную. Они работают с теми же данными, но записывают их гораздо короче и понятнее.

Компьютер умеет говорить на разных языках чисел

§ 1.3.1. Восьмеричная система счисления

💡 Зачем она вообще нужна?

Помнишь, как в двоичной системе даже небольшое число выглядит как бесконечная гирлянда из 0 и 1? Например, число 103 превращается в 1100111₂ — семь символов! А теперь представь, что ты пишешь код для игры, и таких чисел сотни. Глаза разбегаются.

Восьмеричная система счисления (основание 8) — это как сжатие файла. Используем всего восемь цифр: 0, 1, 2, 3, 4, 5, 6, 7. И всё!

Как это работает? Разбираем формулу

В любой позиционной системе счисления каждая цифра имеет свой вес — это степень основания. Для восьмеричной системы формула выглядит так:

an-1·8n-1 + an-2·8n-2 + ... + a₁·8¹ + a₀·8⁰

Звучит страшно? Давай на примере!

Волшебное превращение восьмеричного числа в десятичное

Волшебное превращение восьмеричного числа в десятичное

🔥 Пример 1: Переводим из восьмеричной в десятичную

Возьмём восьмеричное число 1063₈ (читается: «один-ноль-шесть-три по основанию восемь»).

Раскладываем его по разрядам:

1063₈ = 1·8³ + 0·8² + 6·8¹ + 3·8⁰

Вычисляем степени восьмёрки:

  • 8³ = 512
  • 8² = 64
  • 8¹ = 8
  • 8⁰ = 1

Подставляем:

1·512 + 0·64 + 6·8 + 3·1 = 512 + 0 + 48 + 3 = 563₁₀

Ответ: 1063₈ = 563₁₀

Видишь? Всего четыре цифры вместо девяти в десятичной!

Связь восьмеричной и двоичной систем: секретный код!

А теперь фишка: 8 = 2³. Это значит, что между восьмеричной и двоичной системами есть прямая связь!

Каждая восьмеричная цифра = ровно три двоичных разряда (триада).

Таблица 1.4. Шпаргалка переводчика

Восьмеричная цифра Двоичная триада
0000
1001
2010
3011
4100
5101
6110
7111

🔥 Пример 2: Из десятичной в восьмеричную

Переведём число 103₁₀ в восьмеричную систему.

Способ: Делим число на 8, пока не получим ноль. Остатки записываем справа налево (начиная с последнего!).

103 ÷ 8 = 12 (остаток 7)

12 ÷ 8 = 1 (остаток 4)

1 ÷ 8 = 0 (остаток 1)

Читаем остатки снизу вверх: 147₈

Проверка: 1·64 + 4·8 + 7·1 = 64 + 32 + 7 = 103₁₀ ✅

Конвейер по переводу из двоичной в восьмеричную систему

Конвейер по переводу из двоичной в восьмеричную систему

🔥 Пример 3: Из двоичной в восьмеричную (быстрый способ!)

Переведём двоичное число 1101101100₂ в восьмеричную систему.

Алгоритм:

  1. Разбиваем двоичное число на триады справа налево
  2. Если слева не хватает цифр — дополняем нулями
  3. Заменяем каждую триаду на восьмеричную цифру по таблице

1101101100₂ → дополняем → 001 101 101 100₂

Смотрим по таблице:

  • 001₂ = 1₈
  • 101₂ = 5₈
  • 101₂ = 5₈
  • 100₂ = 4₈

Ответ: 1101101100₂ = 1554₈

Круто же? Никаких сложных вычислений!

§ 1.3.2. Шестнадцатеричная система счисления

💡 Когда восьмёрки мало...

В программировании часто работают с цветами, адресами памяти, кодами ошибок. Там нужна ещё более компактная запись. Встречайте: шестнадцатеричная система (основание 16)!

Используются цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 и буквы A, B, C, D, E, F.

🤔 Почему буквы?

Потому что нам нужно 16 разных символов, а цифр всего 10. Поэтому:

  • A = 10
  • B = 11
  • C = 12
  • D = 13
  • E = 14
  • F = 15

Пример из жизни: Когда ты выбираешь цвет в фотошопе или настраиваешь RGB-подсветку на клавиатуре, видишь коды типа #FF5733 — это и есть шестнадцатеричная запись!

Собираем пазл: связь шестнадцатеричной и двоичной систем

Собираем пазл: связь шестнадцатеричной и двоичной систем

🔥 Пример 4: Из десятичной в шестнадцатеричную

Переведём 154₁₀ в шестнадцатеричную систему.

Делим на 16 и записываем остатки:

154 ÷ 16 = 9 (остаток 10 → это A)

9 ÷ 16 = 0 (остаток 9)

Читаем снизу вверх: 9A₁₆

Проверка: 9·16 + 10·1 = 144 + 10 = 154₁₀ ✅

Связь с двоичной: ещё проще!

16 = 2⁴, значит одна шестнадцатеричная цифра = четыре двоичных разряда (тетрада).

Таблица 1.5. Большая шпаргалка

Hex цифра Десятичное Двоичная тетрада
000000
110001
220010
330011
440100
550101
660110
770111
881000
991001
A (10)101010
B (11)111011
C (12)121100
D (13)131101
E (14)141110
F (15)151111

🔥 Пример 5: Из шестнадцатеричной в двоичную

Переведём 3AF₁₆ в двоичную систему.

Просто заменяем каждую hex-цифру на тетраду:

  • 3₁₆ = 0011₂
  • A₁₆ = 1010₂
  • F₁₆ = 1111₂

Объединяем: 3AF₁₆ = 0011 1010 1111₂

Убираем незначащие нули: 1110101111₂

🔥 Пример 6: Из двоичной в hex (через тетрады!)

Переведём 11101101100110₂ в шестнадцатеричную систему.

Шаги:

  1. Разбиваем на тетрады справа налево
  2. Дополняем слева нулями, если нужно
  3. Заменяем по таблице

11101101100110₂ → 0011 1011 0110 0110₂

Переводим:

  • 0011₂ = 3₁₆
  • 1011₂ = B₁₆
  • 0110₂ = 6₁₆
  • 0110₂ = 6₁₆

Ответ: 11101101100110₂ = 3B66₁₆

Вместо 14 символов — всего 4! Вот это компрессия!

Дружная семья систем счисления

Дружная семья систем счисления

🎯 Самое главное

Восьмеричная система использует цифры 0-7, и каждая её цифра соответствует трём двоичным разрядам (триаде)
Шестнадцатеричная система использует цифры 0-9 и буквы A-F, где каждый символ = четырём двоичным разрядам (тетраде)
Почему они родственные двоичной? Потому что 8 = 2³ и 16 = 2⁴. Это позволяет мгновенно переводить числа между этими системами через триады и тетрады
Для перевода в десятичную раскладываем число по разрядам и считаем сумму: цифра × основаниеномер разряда
Для перевода из десятичной делим число на основание, остатки записываем справа налево
В реальной жизни hex-коды встречаются везде: цвета на сайтах (#FF0000 = красный), адреса в памяти компьютера, MAC-адреса устройств

✅ Проверь себя

Проверь, как хорошо ты усвоил материал!

1. Переведи эти числа из десятичной системы в восьмеричную (без калькулятора!):

а) 55₁₀

б) 600₁₀

в) 2022₁₀

Подсказка: делим на 8, записываем остатки снизу вверх

2. Переведи из восьмеричной в двоичную (используй триады):

а) 65₈

б) 123₈

в) 1756₈

Подсказка: каждую восьмеричную цифру замени на три двоичных

3. Переведи из двоичной в восьмеричную:

а) 11011011₂

б) 11101110111₂

в) 110011001100011₂

Подсказка: разбей на триады справа налево, дополни нулями слева

4. Создай таблицу сложения и умножения для восьмеричной системы

Твой вызов: Создай таблицу сложения и умножения для восьмеричной системы (как в начальной школе, но для цифр 0-7). Попробуй по ней что-нибудь посчитать!

5. Переведи эти числа из десятичной в шестнадцатеричную:

а) 55₁₀

б) 600₁₀

в) 2022₁₀

Подсказка: делим на 16, не забывай про буквы A-F

6. Переведи из hex в двоичную (тетрадами!):

а) A5₁₆

б) 1C3₁₆

в) 9A5E₁₆

Подсказка: каждую hex-цифру замени на четыре двоичных

7. Переведи из двоичной в hex:

а) 11011011₂

б) 11101110111₂

в) 11001100110011₂

Подсказка: разбей на тетрады справа налево

8. Быстрый способ перевода: из hex в восьмеричную

Задача: Придумай, как можно быстро перевести целое число из hex в восьмеричную, не переводя его сначала в десятичную. Проверь свой способ на числах:

а) A5₁₆

б) 1C3₁₆

в) 9A5E₁₆

Подсказка: используй двоичную как промежуточную систему

🎯 Задачи с изюминкой

9. Заполни таблицу: каждое число запиши во всех четырёх системах (2, 8, 10, 16)
Основание 2 Основание 8 Основание 10 Основание 16
101010???
?127??
??321?
???2A
10. Сравни двоичные числа x и y (не переводя в десятичную!)

а) x = 1010101111010111₂, y = 1010101110101111₂

б) x = 10101011010101101₂, y = 101011010101101₂

Подсказка: думай как компьютер — разряд за разрядом слева направо

11. Среди этих трёх чисел найди наименьшее и запиши его в десятичной системе

36₁₆, 64₈, 111010₂

Подсказка: переведи все в десятичную и сравни

12. Среди этих трёх чисел найди наибольшее и запиши его в десятичной системе

36₁₆, 63₈, 111101₂

13. Вычисли выражения (ответ дай в десятичной системе)

а) (1111101₂ + AF₁₆) : 36₈

б) 125₈ + 101₂ · 2A₁₆ − 141₈

Подсказка: переведи все числа в десятичную, выполни действия

14. Философский вопрос: Почему восьмеричная и шестнадцатеричная системы считаются системами, родственными двоичной?

Какая ещё позиционная система счисления может считаться родственной двоичной?

Подумай: что общего между основаниями 2, 8 и 16?

15. Исследовательская задача: Формула перевода в систему с основанием q

Ты умеешь переводить целые числа из десятичной системы в двоичную, восьмеричную и шестнадцатеричную. Попробуй сформулировать правило перевода целых десятичных чисел в систему счисления с основанием q (любым!).

Проверь справедливость своего правила: переведи число 555₁₀ в систему счисления с основанием 5.

💡 Где это применяется в реальной жизни

🎨 Веб-дизайн

Все цвета на сайтах записываются в hex-формате: #RRGGBB

Пример: #FF0000 = красный, #00FF00 = зелёный, #0000FF = синий

💻 Программирование

Адреса в памяти компьютера, отладка программ, работа с низкоуровневым кодом

Пример: адрес памяти 0x7FFE1234

🎮 Игры

Коды читов, редактирование сохранений, моддинг игр часто используют hex

Пример: изменение количества денег в сохранении игры

🔐 Кибербезопасность

Анализ сетевых пакетов, шифрование данных, исследование вредоносного ПО

Пример: MAC-адрес 00:1A:2B:3C:4D:5E

🚀 Круто, правда?

Теперь ты — почти хакер! Ты понимаешь язык, на котором говорят компьютеры, и можешь свободно переводить числа между разными системами счисления. Это фундаментальный навык для любого программиста, веб-разработчика или специалиста по кибербезопасности.

Поздравляем! Теперь ты говоришь на языке компьютеров!

Поздравляем! Теперь ты говоришь на языке компьютеров! 🎓

🎉 Отличная работа! Ты освоил восьмеричную и шестнадцатеричную системы счисления. Теперь ты понимаешь, как компьютеры эффективно хранят и обрабатывают информацию. В следующих уроках мы будем использовать эти знания для решения более сложных задач!

Продолжай практиковаться, и скоро перевод между системами счисления станет для тебя таким же простым, как сложение и вычитание!

Информатика — твой билет в цифровое будущее