Если речь только о способе кодирования русских букв:
Например, если буквы только маленькие. Их 33 шт. Следовательно для их кодирования достаточно 6 бит (шесть единиц в двоичной системе счисления 111111b=63 в десятичной системе счисления). Увы, бит - единица неделимая.
Если и маленькие и большие, тогда 66 символов и для хранения потребуется 7 бит (1111111b=127).
Если добавить знаки препинания: пробел, точку, запятую, кавычки и т.п., то за пределы 7 бит не шагнем.
Во времена DOS была популярна кодовая таблица ASCII, в которой было 255 символов (правда не все имели символьное обозначение). Для её кодирования было достаточно 8 бит. 1 байта. Это оказалось гораздо удобнее отечественного изобретения КОИ7, в которой использовались 7 бит, поскольку выравнивать в машинном языке код до одного байта гораздо удобнее.
На данном этапе эволюции, когда в компьютерном мире существует множество языковых групп с разными алфавитами, наиболее популярна таблица utf16. Как не сложно понять из названия, для кодирования символов в ней используется 16 бит - 2 байта. С её помощью можно определить 65535 символов.
Гугл данного вопроса дал следующие данные:
В русском алфавите тридцать три буквы, плюс еще нулевая — пробел между словами. Но так как е и ё сейчас практически не различаются, то их можно считать одной буквой. Можно объединить мягкий знак с твердым. В итоге получаем тридцать две буквы, тридцать два кодовых знака нашего языка. Двоичный логарифм тридцати двух равен пяти. Получаем величину в пять бит. Столько информации несет одна буква нашего алфавита.
Если память не изменяет, то одно нажатие на клавишу клавиатуры (любую, точка, запятая ...) равно одному биту. Но тут есть свои тонкости, объем одного и того же текста, написанного шрифтом Arial будет отличаться от шрифта Times New Roman
Дело в том, что в зависимости от кодировки требуется разное количество информации для кодирования одной буквы. Так, кодирование одной буквы может занимать 7, 8, 16 или 32 бита. Все зависит от кодировки. Соответственно названиям кодировок КОИ-8, utf8, ISO8859-5, CP1251. Это русские кодировки, но сейчас идет постепенный переход на кодировку UniCode.
Изначально, когда не было Интернета, каждая буква, в том числе и Русского алфавита, занимала 1 байт или 8 бит. Уже тогда возникали проблемы при переписке с иностранцами.
С появлением многоязыковых страниц Интернета, пришлось вводить 16 битное кодирование символов.
В отечественной кодировке КОИ-7 каждая буква занимает 7 бит.
Добавить комментарий