Во всем мире люди используют так называемую «позиционную» систему: значение цифры в составе числа зависит от ее позиции. Это значит, что стоящие вместе цифры 1, 4 и 2 вместе будут составлять число сто сорок два, но если поменять эти цифры местами, мы получим совершенно другое число. Каждое из знаков в составе числа имеет свой разряд, поэтому мы легко читаем написанное число и определяем его величину.

Но позиционная система построения чисел не всегда была такой, какой мы привыкли его видеть. Например, цифра ноль придумана уже после того, как был изобретен основной ряд чисел. А до тех пор числа складывались иначе.

Римские цифры использовали повторительные символы для записи нового числа. Например, число 10 выглядит как X, 30 – ХХХ, а 1123 в римской записи выглядит как MCXXIII.

Как считает компьютер?

В компьютере используется элементарная двоичная система исчисления: числа складываются только из двух знаков – нуля и единицы. Это связано в первую очередь с внутренним строением компьютера. Внутри процессора находятся миллионы транзисторов, которые по своим техническим особенностям имеют два состояния: включен (ток свободно протекает) или выключен (ток не течет).

Различия между двоичной, десятичной и шестнадцатеричной системой

Двоичная система

Компьютеры не могут использовать обычную человеческую систему исчисления, так как один транзистор не может иметь десять различных состояний. Технически это не реализуемо, даже добиться третьего (полувключенного) и прочих промежуточных состояний от транзистора очень сложно. Для этого надо заставить транзистор работать на высоких частотах без сбоев.

С двоичной системой микроэлектроника справляется успешно. Компьютер оперирует только нулями и единицами. Каждая переключаемая ячейка (транзистор) именуется битом. Современные компьютеры имеют стандартный кластер в 1 байт, что равняется восьми битам (2 в степени 8), его максимальное значение равняется 256 знакам вместе с нулем:

  • 1 бит - один разряд и два значения (от 0 до 1);
  • 4 бита – четыре разряда и 16 значений (от 0000 до 1111)
  • 8 бит - восемь разрядов и двести пятьдесят шесть значений (от 00000000 до 11111111).

1 бит – это минимальная единица для цифровых устройств.

Компьютер считывает число в двоичной форме, а потом преобразует его в удобный для человека вид. На картинке ниже представлено число «142» в двоичной системе.

Бинарная система счисления
Фотография Бинарная система исчиления

Шестнадцатеричная система

Эта система отличается от привычной десятичной и двоичной количеством знаков в разряде. Тут используется числовой ряд от 0 до 15, где в диапазоне от десяти до пятнадцати в роли чисел выступают латинские буквы.

(

Шестнадцатеричная система исчисления
Фотография Шестнадцатеричная система исчисления

Этот формат используется в программировании для простой записи одного байта информации, а также в веб-дизайне, например, для кодирования палитры цветов. Вместо длинной двоичной записи в восемь знаков используются всего лишь два разряда. Максимальное двухразрядное значение этой системы можно представить в виде FF, что равняется 1111 1111 в двоичном или 255 в десятичном виде.

Различия систем исчисления
Фотография Различия систем исчисления

Иногда перед значением можно увидеть префикс 0х, означающий, что следующее число следует интерпретировать, как шестнадцатеричное: 0х8E – число 142 в десятичной форме.

Префикс
Фотография Префикс

Так все-таки зачем такие сложности?

Конечно, для любого человека предпочтительнее использовать одну систему исчисления в различных сферах. Но увы, в цифровом мире это неприменимо: привычная десятичная система проста, но компьютер аппаратно ее не понимает, а двоичную систему читать невозможно. Шестнадцатеричная система делает код несколько более читаемым, но только для просвещенных, умеющих использовать HEX-редакторы.

Поэтому шестнадцатеричная система является неким переходным состоянием между машинным кодом и удобочитаемым кодом для человека.

Декодированный бинарный код
Фотография Декодированный бинарный код