1. Введение в системы счисления: история, определения и классификация на позиционные и непозиционные
Введение в системы счисления: история, определения и классификация на позиционные и непозиционные
Добро пожаловать в курс «Основы систем счисления». Мы начинаем наше путешествие с фундаментальных понятий. Прежде чем учиться переводить числа из двоичной системы в шестнадцатеричную или понимать, как компьютер хранит данные, нам нужно разобраться: а что такое число вообще? Как люди научились записывать количества и почему способ записи имеет решающее значение для математики и технологий?
Что такое система счисления?
Представьте, что вы древний пастух. У вас есть стадо овец. Как убедиться, что вечером вернулись все овцы, которые ушли утром? Скорее всего, вы будете использовать камешки: одна овца — один камешек. Или делать зарубки на палке.
Это и есть простейшая система счисления. Но если овец тысяча? Носить с собой мешок с тысячей камней неудобно. Человечеству понадобился способ записывать большие количества компактно.
> Система счисления — это знаковая система, способ записи чисел с помощью письменных знаков (цифр).
В любой системе счисления есть два главных понятия:
Например, в привычной нам десятичной системе алфавит состоит из десяти знаков: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
!Эволюция записи числа 5 от простых зарубок до современной арабской цифры.
История: от зарубок до нуля
История чисел — это история борьбы за краткость и удобство вычислений.
Унарная система
Самая древняя система — унарная (от латинского unus — один). В ней есть только один символ — палочка, черточка или узелок. Чтобы записать число 5, нужно нарисовать 5 палочек:|||||. Это удобно для счета на пальцах, но попробуйте записать так население Китая.Древний Египет и Рим
Позже люди придумали группировать знаки. В Древнем Риме, например, ввели специальные символы для 5 (), 10 (), 50 (), 100 () и так далее. Это значительно сократило запись. Число 123 уже не требовало 123 палочек, а записывалось как .Великое изобретение Индии
Настоящая революция произошла в Индии примерно в V веке н.э. Индийские математики придумали позиционную запись и, что самое важное, ввели понятие нуля (шунья). Позже эти знания переняли арабы, и через них они попали в Европу. Именно поэтому наши цифры называются «арабскими», хотя родом они из Индии.Классификация систем счисления
Все системы счисления делятся на два больших класса: непозиционные и позиционные. Различие между ними фундаментально и определяет, насколько легко нам будет складывать, вычитать и умножать.
Непозиционные системы счисления
В непозиционных системах счисления значение цифры не зависит от её положения (позиции) в числе.
Самый яркий пример — римская система счисления.
Рассмотрим число (тридцать). В нем три одинаковых символа . Каждый из них обозначает ровно 10 единиц.
* Первый — это 10. * Второй — это 10. * Третий — это 10.
Сумма: .
Где бы ни стоял символ — в начале, в середине или в конце — он (почти всегда) означает просто количество 10. Мы просто суммируем значения всех цифр. Именно поэтому такие системы еще называют аддитивными (от англ. add — складывать).
Недостатки непозиционных систем: * Сложность записи больших чисел: нужны всё новые и новые символы для тысячи, миллиона и т.д. * Невозможность простых вычислений: попробуйте умножить на в столбик. Это практически невозможно без перевода в другую систему или использования абака. * Отсутствие нуля: в римской системе нет знака для «ничего».
Позиционные системы счисления
В позиционных системах значение цифры зависит от её места (позиции) в записи числа.
Это та система, которой мы пользуемся каждый день — десятичная.
Рассмотрим число . Здесь использован один и тот же символ — тройка. Но его «вес» меняется:
Итоговое значение: .
Чувствуете разницу с римским ? В римской системе три икса — это просто . В позиционной системе сдвиг цифры влево увеличивает её значение в определенное количество раз.
!Визуальное сравнение того, как формируется значение числа в непозиционной и позиционной системах.
Основание системы счисления
Ключевой характеристикой любой позиционной системы является её основание.
> Основание системы счисления — это количество различных знаков (цифр), используемых в алфавите этой системы. Также основание показывает, во сколько раз изменяется вес цифры при перемещении на одну позицию.
В нашей повседневной жизни основание равно 10. Почему? Скорее всего, просто потому, что у нас 10 пальцев на руках. Если бы мы были персонажами мультфильмов с четырьмя пальцами на руке, мы бы, вероятно, использовали восьмеричную систему.
В информатике используются другие основания: * 2 (двоичная): алфавит {0, 1}. * 8 (восьмеричная): алфавит {0, 1, 2, 3, 4, 5, 6, 7}. * 16 (шестнадцатеричная): алфавит {0-9, A-F}.
Развернутая форма записи числа
Любое число в позиционной системе можно расписать в виде суммы. Это называется развернутой формой записи. Она помогает понять математическую суть числа.
Формула выглядит так:
Где: * — само число. * — знак суммы (сигма). * — номер позиции (разряда), начиная с нуля справа налево. * — цифра, стоящая в позиции . * — основание системы счисления (например, 10). * — количество разрядов в числе.
Не пугайтесь формулы, на примере она выглядит очень просто.
Возьмем число 528 в десятичной системе ().
Запишем сумму:
Где: * — число 528 в десятичной системе. * — это 100 (вес сотен). * — это 10 (вес десятков). * — это 1 (вес единиц, так как любое число в степени 0 равно 1).
Давайте проверим:
Всё сходится! Эта формула универсальна. Она работает и для двоичной системы, и для любой другой. В следующих статьях мы будем использовать именно эту логику, чтобы переводить числа из «компьютерного» языка в человеческий.
Сравнение систем
Подведем итог различий в виде таблицы:
| Характеристика | Непозиционные (например, Римская) | Позиционные (например, Десятичная) | | :--- | :--- | :--- | | Зависимость от места | Значение цифры не зависит от позиции | Значение цифры зависит от позиции | | Набор цифр | Может быть бесконечным (нужны новые знаки для больших чисел) | Ограничен (алфавит), знаки повторяются | | Нуль | Обычно отсутствует | Обязателен для обозначения пустых разрядов | | Арифметика | Очень сложная | Простая, поразрядная |
Заключение
Мы выяснили, что системы счисления прошли долгий путь от зарубок на костях до позиционной системы, подаренной нам индийскими математиками. Позиционный принцип — это гениальное изобретение, которое позволило записывать сколь угодно большие числа, используя всего несколько символов, и легко выполнять арифметические операции.
В следующей статье мы углубимся в мир компьютеров и разберем двоичную систему счисления — язык, на котором «думают» процессоры.