Давайте внимательнее посмотрим, что же представляет собой язык компьютера. Первое откровение – компьютер умеет считать только до одного. Да-да, он знает всего два числа: 0 и 1. Почему так, мы разберемся в нашем следующем исследовании. А пока ответим на вопрос, как же с помощью этих двух чисел компьютер представляет всю ту логику и информацию, которой мы в нём пользуемся.
И чтобы ответить, нужно ближе познакомиться с *бинарной системой исчисления*. Это та, которая состоит только из нулей и единиц. Важно понимать, что любое число может быть предствлено даже в этой системе. Например, в привычной нам десятичной системе цифр – 10, но с помощью них мы можем представить любое число, хоть 17 596 649 683. Так же и в бинарной системе может быть представлено любое число. Только оно будет заметно длиньше.
Смотрите, в любой системе исчисления числа делятся на порядки. В десятичной системе числа с 0 до 9 – это числа первого порядка. С 10 до 99 – второго. Со 100 до 999 – третьего, и так далее. Для представления каждого следующего порядка нам нужно приписать еще одну позицию цифр от 0 до 9. И число каждого следующего порядка будет в 10 раз больше предыдущего. Это легко заметить на примерах чисел 1, 10, 100, 1000...
В двоичной системе исчисления все аналогично. Только цифры у нас всего две. А значит, каждый следующий порядок будет в два раза больше предыдущего. То есть, в первом порядке мы досчитаем максимум до одного. Но как же нам получить двойку? Элементарно, Ватсон! В двоичной системе двойка - это число 10. И снова да-да.
Почему же так получилось? Все просто. Двойка – это число следующего порядка. Чтобы его получить, нужно добавить новую позицию к числу первого порядка. Догадались, как получить четверку? Надеюсь, что да. Это число 100. А теперь немного сложнее: как же получить тройку? Тройка, это число где-то между вторым и третьим порядком. То есть, уже не единица, но еще и не четверка. В десятичной системе этому аналогичны цифры 11..99. Но, как мы помним, в бинарной системе порядок у нас может состоять максимум из двух чисел. Поэтому если двойка это 10, то тройка – 11. Все просто 🙂
Аналогично, если четверка – это 100, то пятерка – 101. А вот 111 – это уже семерка. Сможете сами разобраться, почему?
Получается, что с помощью бинарной системы исчисления можно так же представить абсолютно любое число. Просто оно будет длинным. Это создает неудобства, попробуйте представить себе миллион в двоичной системе исчисления. Но компьютеру так понятнее. Немного терпения, и мы поймем почему. Факт в том, что если компьютер может понимать абсолютно любые числа, значит ему довольно просто можно объяснить любую задачу. Достаточно просто представить её числами. Примерно, как в задачах по математике. Только в данном случае даже слова и картинки тоже кодируются числами.