Сегодня мы с вами разберем: как компьютер хранит информацию, и как понимать разные системы счисления.
Хранение информации в компьютере
Если вы не прогуливали уроки информатики в школе, то знаете, что самая маленькая единица информации в компьютере - это бит. Бит может принимать значения 0 или 1, как показано на рисунке выше (рисунок примерный и нужен для понимания принципа). Далее биты складываются в тетраду (4 бита), а две тетрады складываются в байт (8 бит). Несмотря на то что компьютер хранит информацию в двоичной системе счисления представлять её проще в шестнадцатеричной (таким образов в байт помещаются две цифры в шестнадцатеричной системе).
системы счисления
Название системы происходит от её основания, то есть от количества цифр и букв, которые можно использовать. Например, в двоичной это две цифры 0 и 1, в троичной три: 0,1,2 в тридцатишестиричной это цифры от 0 до 9 и Латинские буквы от A до Z. В любой позиционной системе счисления (значение каждой цифры числа зависит от её позиции) значение цифры (относительно десятичной системы) равно: = значение этой цифры * основание системы счисление (в двоичной 2, в десятичной 10 и т.д.) в степени разряда (степень разряда начинается с 0 в целой части числа с права, и идет на увеличение влево, или на уменьшение в право в дробную часть). Проще это будет понять на примере.
перевод из одной системы в другую
На этой схеме постарался максимально подробно показать, как переводятся числа из двоичной системы в другую. Если объяснять словами, то: для того чтобы из байта получить 16-ное число необходимо разделить его на две части и каждую часть посчитать отдельно, это самый простой вариант. Для того чтобы это число перевести в 10-ную систему, нам нужно применить формулу из абзаца выше 9 * 16^1 + 5*16^0 = 149 в 10-ной. Чтобы из байта получить число в 10-ной системе нужно:
1. Посмотреть какие биты "включены", то есть имеют значение "1". Это нужно для того чтобы не брать в расчет биты с значением "0".
2. Понять в каких разрядах находятся эти единицы чтобы знать какую степень двойки брать.
3. И в конце сложить все полученные числа
Опять же посмотри на нашем примере. Мы видим, что, значение "1" имеют биты под номером 7,4,2,0. Теперь возводим двойки в эти степени: 2^7 = 128, 2^4 = 16, 2^2 = 2, 2^0 = 1. По идее теперь эти числа нужно умножить на цифры в числе которое мы переводим, но так как у нас двоичная система и кроме единицы и нуля, других цифр у нас нет, а ноль мы в расчет не берем (при умножении на ноль, ответ всегда = 0), нет смысла умножать на единицу. В итоге у нас получается 128 + 16 + 2 + 1 = 149 в 10-ной.
Вывод
В этой лекции я очень кратко, с упрощениями и неточностями, рассказал как компьютер хранит и переводит числа из нулей и единиц в другие системы счисления, и как самостоятельно понимать какое число хранится в байте. То как компьютер переводит цифры в слова это уже совсем другая тема, которая будет разобрана в следующих лекциях.
калькулятор систем счисления: https://calculatori.ru/perevod-chisel.html