Вы все могли столкнуться с вопросом: почему мы не могли просто использовать нашу традиционную понятную человеку десятичную систему счисления вместо таких сложных систем счисления, как двоичная, восьмеричная, шестнадцатеричная?

Например, десятичное число 512 представляется как

200 в шестнадцатеричной системе счисления,

1000 в восьмеричной системе счисления,

0010 0000 0000 в двоичной системе счисления.

Это явно не имеет смысла? Итак, зачем они нам снова нужны?

Кроме того, вы, возможно, слышали, что шестнадцатеричные числа удобочитаемы для человека, кроме десятичных.

Хорошо, давайте разберемся.

Все мы знаем, что компьютеры не могли бы понять любую форму системы счисления без протокола. Он знает только 2 разные цифры. Либо 0, либо 1. Он известен как двоичный.

На аппаратном уровне либо течет ток, который представлен как 1, либо нет, что представлено как 0. Да, компьютеры такие тупые. Но люди могут понимать 10 разных цифр (0,1,2,3,4,5,6,7,8,9).

Итак, на заре вычислительных машин ученые были настолько одержимы решением проблемы, как мы могли заставить компьютеры понимать удобочитаемые цифры.

Сначала они думают о решении, изменяя мощность, проходящую через провод (системную шину), они могут заставить компьютер понимать разные цифры.

Например,

1 ватт для представления цифры 0

2 Вт для представления цифры 1

so on…

Как вы могли заметить, у этого подхода много минусов.

  • Прежде всего, на каждом уровне обработки и хранения нам нужно преобразовать разную мощность в разную цифру.
  • Нам нужно рассмотреть не только 10 цифр. У нас есть разные символы, такие как , ( % › " . 26 английских алфавитов. Есть также строчные буквы. Также существует большое количество языков с разным количеством символов. Чтобы удовлетворить все эти потребности, нам нужно иметь разная сила для каждого персонажа Это тяжело и для машин.
  • Из-за большого количества различных возможностей мощности нам необходимо ограничить разницу в мощности между двумя последовательными символами. При такой небольшой разнице в масштабе сопротивление провода и длина провода могут изменять ток, проходящий через них.

Но, Бхарат, у нас есть решение этой проблемы, верно?

  • Просто уменьшите ток и увеличьте напряжение, чтобы решить эту проблему. Но изменение напряжения часто вызывает колебания напряжения, что очень плохо для электрических компонентов. В противном случае мы могли бы добавить трансформатор на каждый уровень хранения и обработки. Звучит прагматично😂😂😂.

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

Эта мысль натолкнула на идею объединения двоичных чисел для получения больших чисел. Но как их совместить?

Эта часть также происходит из традиционной системы счисления. После десятичных чисел 1, 2, 3, 4, 5, 6, 7, 8, 9 мы начинаем комбинировать числа, чтобы получилось 10, 11, 12…

Таким образом, в двоичном формате после 0 и 1 мы начинаем комбинировать 2 числа (бита), чтобы получить 10, что представляет 2, 11, что представляет 3. Затем мы объединяем 3 бита 100, чтобы получить 4, и так далее…

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

Хорошо, проблема в том, что нам нужно, чтобы компьютер понял, когда искать следующий символ. Например,

Для числа 1024 двоичное число равно 010000000000.

а для числа 1 двоичное число равно 1.

Здесь оба числа имеют разное количество цифр. При этом компьютер не мог понять, когда искать второе число.

Чтобы решить эту проблему, были сформированы системы счисления.

Теперь переходим к реальному вопросу. Зачем нужна шестнадцатеричная система счисления?

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

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

Начнем с одного бита. Очевидно, что он может представлять либо 0, либо 1. Что нам мало.

Хорошо, давайте перейдем к двум битам. Он может представлять

  • 0(00)
  • 1(01)
  • 2(10)
  • 3(11)

чего нам тоже недостаточно, так как мы делаем более сложную математику, которая требует больше цифр, чем эти.

Затем мы переходим к трем битам. Он может представлять

  • 0(000)
  • 1(001)
  • 2(010)
  • 3(011)
  • 4(100)
  • 5(101)
  • 6(110)
  • 7(111)

Это лучше, чем иметь 2 бита. Он также пропускает только 2 десятичные цифры (8 и 9). Мы можем справиться с нехваткой 8 и 9. Таким образом, она превратилась в восьмеричную систему счисления, поскольку она может представлять 8 десятичных цифр с использованием 3 двоичных цифр. Это лучше, но не идеально, поэтому мы переходим к четырем битам.

Давайте посмотрим, на что способна четырехбитная система счисления.

  • 0(0000)
  • 1(0001)
  • 2(0010)
  • 3(0011)
  • 4(0100)
  • 5(0101)
  • 6(0110)
  • 7(0111)
  • 8(1000)
  • 9(1001)
  • 10(1010) => A
  • 11(1011) => B
  • 12(1100) => C
  • 13(1101) => D
  • 14(1110) => E
  • 15(1111) => F

Это могло бы удовлетворить наши потребности. Однако он также представляет цифры, которые нам не нужны. Мы могли бы просто пренебречь этими дополнительными цифрами от a до f, верно?

На самом деле, эти дополнительные цифры имеют некоторые преимущества.

Чтобы получить это, нам нужно понять, в чем преимущество использования десятичного числа перед двоичным?

Очевидно, что мы можем представить большое число меньшим количеством цифр.

Например,

Чтобы представить 1024 в двоичном виде, нам нужно 11 цифр. (10000000000)

Точно так же, чтобы представить 999 в восьмеричном формате, нам нужно 4 цифры. (1747 г.)

Но число 1024 в шестнадцатеричном виде равно 400. а число 999 в шестнадцатеричном виде равно 3E7. Что сводит к минимуму количество цифр, которые нам нужно использовать. Это сокращает время расчета.

Таким образом, шестнадцатеричная система счисления используется повсеместно.

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

Теперь вы можете спросить Бхарата, для чисел это нормально. Но для алфавитов и специальных символов?

Вот где появились разные стандарты кодирования символов. Например. ASCII, Юникод и т. д.

Дополнительное примечание:

Квантовый бит (кубит) может одновременно представлять разные состояния. Это известно как квантовая суперпозиция. то есть 4 кубита могут представлять те же 16 комбинаций, но все одновременно. что означает, что он может сравнивать все возможные состояния одновременно. Звучит удивительно, правда? Давайте посмотрим на это подробно в следующих статьях. Спасибо!

возвращение;