0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<ul><li><a>Кодирование - это…</a></li>
1
<ul><li><a>Кодирование - это…</a></li>
2
<li><a>Термины и связанные определения</a></li>
2
<li><a>Термины и связанные определения</a></li>
3
<li><a>ASCII</a><ul><li><a>Расширенные ASCII</a></li>
3
<li><a>ASCII</a><ul><li><a>Расширенные ASCII</a></li>
4
<li><a>Windows-1251</a></li>
4
<li><a>Windows-1251</a></li>
5
</ul></li>
5
</ul></li>
6
<li><a>Unicode</a><ul><li><a>UTF-32</a></li>
6
<li><a>Unicode</a><ul><li><a>UTF-32</a></li>
7
<li><a>UTF-16</a></li>
7
<li><a>UTF-16</a></li>
8
<li><a>UTF-8</a></li>
8
<li><a>UTF-8</a></li>
9
</ul></li>
9
</ul></li>
10
</ul><p>Вся информация в компьютере представлена различными способами. Чтобы она была понятна устройству, а не человеку, используются различные таблицы кодирования. Они называются символьными кодировками.</p>
10
</ul><p>Вся информация в компьютере представлена различными способами. Чтобы она была понятна устройству, а не человеку, используются различные таблицы кодирования. Они называются символьными кодировками.</p>
11
<p>Сегодня предстоит познакомиться с соответствующими компонентами поближе. Нужно выяснить, то вообще собой представляет кодирование информации, для каких именно целей оно применяется. А еще - изучить наиболее распространенные кодировки символов в современных компьютерах.</p>
11
<p>Сегодня предстоит познакомиться с соответствующими компонентами поближе. Нужно выяснить, то вообще собой представляет кодирование информации, для каких именно целей оно применяется. А еще - изучить наиболее распространенные кодировки символов в современных компьютерах.</p>
12
<p>Опубликованная ниже информация рассчитана не только для IT-специалистов, но и для обычных ПК-пользователей. Она поможет выяснить принципы распознавания символьной информации современными гаджетами.</p>
12
<p>Опубликованная ниже информация рассчитана не только для IT-специалистов, но и для обычных ПК-пользователей. Она поможет выяснить принципы распознавания символьной информации современными гаджетами.</p>
13
<h2>Кодирование - это…</h2>
13
<h2>Кодирование - это…</h2>
14
<p>Кодирование символов - это система представления букв, цифр, а также специальных символов при помощи числовых кодов. Процесс присвоения числовых значений графическим символам, особенно печатным символам человеческого языка.</p>
14
<p>Кодирование символов - это система представления букв, цифр, а также специальных символов при помощи числовых кодов. Процесс присвоения числовых значений графическим символам, особенно печатным символам человеческого языка.</p>
15
<p>За счет кодирования можно обеспечить символьным элементам:</p>
15
<p>За счет кодирования можно обеспечить символьным элементам:</p>
16
<ul><li>хранение;</li>
16
<ul><li>хранение;</li>
17
<li>передачу;</li>
17
<li>передачу;</li>
18
<li>преобразование посредством компьютеров или иных цифровых современных устройств.</li>
18
<li>преобразование посредством компьютеров или иных цифровых современных устройств.</li>
19
</ul><p>Числовые значения, формирующие кодировку, - это кодовые точки. В совокупности они образуют пространство кода или кодовую страницу. Это сочетание также носит название таблицы символов.</p>
19
</ul><p>Числовые значения, формирующие кодировку, - это кодовые точки. В совокупности они образуют пространство кода или кодовую страницу. Это сочетание также носит название таблицы символов.</p>
20
<h2>Термины и связанные определения</h2>
20
<h2>Термины и связанные определения</h2>
21
<p>При изучении кодов символов необходимо запомнить несколько ключевых определений и понятий. Это поможет быстрее разобраться в выбранном направлении:</p>
21
<p>При изучении кодов символов необходимо запомнить несколько ключевых определений и понятий. Это поможет быстрее разобраться в выбранном направлении:</p>
22
<ol><li>Знак препинания - минимальная единица текста, наделенная тем или иным смысловым значением.</li>
22
<ol><li>Знак препинания - минимальная единица текста, наделенная тем или иным смысловым значением.</li>
23
<li>Набор символов - совокупность элементов, используемых для представления текста. В качестве примера можно привести латинский или греческий алфавит.</li>
23
<li>Набор символов - совокупность элементов, используемых для представления текста. В качестве примера можно привести латинский или греческий алфавит.</li>
24
<li>Кодированный символьный набор - набор символов, который преобразован в набор уникальных чисел (кодов). Исторически сложилось так, что этот компонент называется кодовой страницей.</li>
24
<li>Кодированный символьный набор - набор символов, который преобразован в набор уникальных чисел (кодов). Исторически сложилось так, что этот компонент называется кодовой страницей.</li>
25
<li>Набор символов - совокупность символьных компонентов, которые могут быть представлены определенным набором кодированных символов. Этот элемент бывает закрытым - в него не допускаются никакие изменения без формирования нового стандарта. Также набор символов бывает открытый. Он допускает разнообразные дополнения.</li>
25
<li>Набор символов - совокупность символьных компонентов, которые могут быть представлены определенным набором кодированных символов. Этот элемент бывает закрытым - в него не допускаются никакие изменения без формирования нового стандарта. Также набор символов бывает открытый. Он допускает разнообразные дополнения.</li>
26
<li>Кодовая точка - значение или позиция символа в кодировке набора символов.</li>
26
<li>Кодовая точка - значение или позиция символа в кодировке набора символов.</li>
27
<li>Кодовое пространство - диапазон числовых значений (кодов), задаваемых набором кодируемых символов.</li>
27
<li>Кодовое пространство - диапазон числовых значений (кодов), задаваемых набором кодируемых символов.</li>
28
<li>Кодовая единица - минимальная комбинация битов, которая может представлять собой символ в символьной кодировке. В информатике этим термином характеризуют размер слова в кодировке.</li>
28
<li>Кодовая единица - минимальная комбинация битов, которая может представлять собой символ в символьной кодировке. В информатике этим термином характеризуют размер слова в кодировке.</li>
29
</ol><p>Теперь можно более подробно рассмотреть варианты кодов, используемых для представления печатных элементов в современных компьютерах.</p>
29
</ol><p>Теперь можно более подробно рассмотреть варианты кодов, используемых для представления печатных элементов в современных компьютерах.</p>
30
<h2>ASCII</h2>
30
<h2>ASCII</h2>
31
<p>ASCII или American Standard Code for Information Interchange - это американский стандартный код информационного обмена. Произносится как "Аски".</p>
31
<p>ASCII или American Standard Code for Information Interchange - это американский стандартный код информационного обмена. Произносится как "Аски".</p>
32
<p>Он был разработан в 1963 году. ASCII до сих пор используется для работы с кодами в компьютерах, хоть и не слишком часто. </p>
32
<p>Он был разработан в 1963 году. ASCII до сих пор используется для работы с кодами в компьютерах, хоть и не слишком часто. </p>
33
<p>Данный "код" представляет собой кодировку интерпретации:</p>
33
<p>Данный "код" представляет собой кодировку интерпретации:</p>
34
<ul><li>десятичных цифр;</li>
34
<ul><li>десятичных цифр;</li>
35
<li>латинского и национального алфавитов;</li>
35
<li>латинского и национального алфавитов;</li>
36
<li>управляющих символов;</li>
36
<li>управляющих символов;</li>
37
<li>знаков препинания.</li>
37
<li>знаков препинания.</li>
38
</ul><p>Изначально код создавался 7-битным. С его развитием каждый элемент стал храниться в 8 битах. Старший бит всегда установлен в 0. Теперь распространена 8-битная ASCII. В компьютерах чаще всего используются расширения "Аски" с задействованной второй половиной байта.</p>
38
</ul><p>Изначально код создавался 7-битным. С его развитием каждый элемент стал храниться в 8 битах. Старший бит всегда установлен в 0. Теперь распространена 8-битная ASCII. В компьютерах чаще всего используются расширения "Аски" с задействованной второй половиной байта.</p>
39
<p>У ASCII есть вариант без национальных составляющих. Он называется US-ASCII. Всего в рассматриваемой кодировке представлено 128 символьных элемента. Для каждого устанавливается свой код интерпретации. В состав ASCII сейчас входят не только ранее перечисленные компоненты, но и:</p>
39
<p>У ASCII есть вариант без национальных составляющих. Он называется US-ASCII. Всего в рассматриваемой кодировке представлено 128 символьных элемента. Для каждого устанавливается свой код интерпретации. В состав ASCII сейчас входят не только ранее перечисленные компоненты, но и:</p>
40
<ul><li>математические символы;</li>
40
<ul><li>математические символы;</li>
41
<li>арабские цифры;</li>
41
<li>арабские цифры;</li>
42
<li>заглавные и строчные буквы латинского алфавита;</li>
42
<li>заглавные и строчные буквы латинского алфавита;</li>
43
<li>32 управляющих символьных записи.</li>
43
<li>32 управляющих символьных записи.</li>
44
</ul><p>Сейчас управляющие компоненты используются редко.</p>
44
</ul><p>Сейчас управляющие компоненты используются редко.</p>
45
<p>Выше можно увидеть, как выглядит таблица ASCII.</p>
45
<p>Выше можно увидеть, как выглядит таблица ASCII.</p>
46
<h3>Расширенные ASCII</h3>
46
<h3>Расширенные ASCII</h3>
47
<p>ASCII стала основой для развития разнообразных современных кодировок. Изначально в ней было всего 128 составляющих. В расширенной интерпретации получилось присвоить коды 256 элементам. Их можно было закодировать в одном байте информации. Это привело к возможности добавления в "Аски" букв национальных языков.</p>
47
<p>ASCII стала основой для развития разнообразных современных кодировок. Изначально в ней было всего 128 составляющих. В расширенной интерпретации получилось присвоить коды 256 элементам. Их можно было закодировать в одном байте информации. Это привело к возможности добавления в "Аски" букв национальных языков.</p>
48
<p>В качестве расширенного ASCII появилась CP866. В ней можно было присвоить коды русскому алфавиту. Ее верхняя часть полностью совпадала с базовой версией "Аски". Нижняя обладала несколько измененным видом. С помощью CP866 появилась возможность кодирования русских букв и псевдографики.</p>
48
<p>В качестве расширенного ASCII появилась CP866. В ней можно было присвоить коды русскому алфавиту. Ее верхняя часть полностью совпадала с базовой версией "Аски". Нижняя обладала несколько измененным видом. С помощью CP866 появилась возможность кодирования русских букв и псевдографики.</p>
49
<p>CP866 распространялась компанией IBM. Для представления русского языка со временем появились другие кодировки расширенной интерпретации "Аски". В качестве примера можно привести KOI-8.</p>
49
<p>CP866 распространялась компанией IBM. Для представления русского языка со временем появились другие кодировки расширенной интерпретации "Аски". В качестве примера можно привести KOI-8.</p>
50
<p>Принцип работы с кодами здесь точно такой же, как и у CP866 - каждый элемент текста кодируется одним байтом. Первая половина совпадает с "Аски", поэтому выше представлена вторая ее часть. В KOI-8 кириллические буквы в таблице будут идти не в алфавитном порядке, как в CP866.</p>
50
<p>Принцип работы с кодами здесь точно такой же, как и у CP866 - каждый элемент текста кодируется одним байтом. Первая половина совпадает с "Аски", поэтому выше представлена вторая ее часть. В KOI-8 кириллические буквы в таблице будут идти не в алфавитном порядке, как в CP866.</p>
51
<h3>Windows-1251</h3>
51
<h3>Windows-1251</h3>
52
<p>Символы ASCII и некоторые ее расширенные версии уже изучены, но на них развитие таблиц кодов не закончилось. Дальнейший прогресс связан с тем, что графические операционные системы начали набирать огромную популярность. Псевдографика стала отходить на второй план. Со временем она вовсе пропала. Это привело к появлению целой группы расширенных версий "Аски", но без псевдографических составляющих. Они стали относиться к ANSI-кодировкам, разработанным американским институтом стандартизации. Наиболее популярным вариантом выступила кодировка Windows-1251.</p>
52
<p>Символы ASCII и некоторые ее расширенные версии уже изучены, но на них развитие таблиц кодов не закончилось. Дальнейший прогресс связан с тем, что графические операционные системы начали набирать огромную популярность. Псевдографика стала отходить на второй план. Со временем она вовсе пропала. Это привело к появлению целой группы расширенных версий "Аски", но без псевдографических составляющих. Они стали относиться к ANSI-кодировкам, разработанным американским институтом стандартизации. Наиболее популярным вариантом выступила кодировка Windows-1251.</p>
53
<p>Вместо псевдографики тут появились:</p>
53
<p>Вместо псевдографики тут появились:</p>
54
<ul><li>символы русской типографики (без знака ударения);</li>
54
<ul><li>символы русской типографики (без знака ударения);</li>
55
<li>символы, используемые в близких к русскому славянских языках (белорусскому, украинскому и так далее).</li>
55
<li>символы, используемые в близких к русскому славянских языках (белорусскому, украинскому и так далее).</li>
56
</ul><p>Из-за такого обилия методов шифрования русского языка у производителей шрифтов и программного обеспечения стали возникать проблемы. Это привело к тому, что вместо положенного текста на экране начали появляться так называемые "кракозябры". Она символизирует о путанице кодов, используемых в тексте.</p>
56
</ul><p>Из-за такого обилия методов шифрования русского языка у производителей шрифтов и программного обеспечения стали возникать проблемы. Это привело к тому, что вместо положенного текста на экране начали появляться так называемые "кракозябры". Она символизирует о путанице кодов, используемых в тексте.</p>
57
<p>Windows-1251 была создана компанией Microsoft. Она является стандартной 8-битной кодировкой русских версий операционных систем Windows до 10-ой версии включительно. Раньше была очень популярна, но сейчас ее распространенность значительно упала.</p>
57
<p>Windows-1251 была создана компанией Microsoft. Она является стандартной 8-битной кодировкой русских версий операционных систем Windows до 10-ой версии включительно. Раньше была очень популярна, но сейчас ее распространенность значительно упала.</p>
58
<h2>Unicode</h2>
58
<h2>Unicode</h2>
59
<p>Unicode (или "Юникод") - это современный стандарт представления символьных данных кодами. Он появился из-за того, что одним байтом информации невозможно описать алфавиты групп юго-восточной Азии (иероглифы). </p>
59
<p>Unicode (или "Юникод") - это современный стандарт представления символьных данных кодами. Он появился из-за того, что одним байтом информации невозможно описать алфавиты групп юго-восточной Азии (иероглифы). </p>
60
<p>Это привело к тому, что в 1991 году некоммерческая организация "Консорциум Юникода" представила свою собственную разработку кодирования данных. Она получила название Unicode. Применение соответствующего стандарта позволяет закодировать очень много разнообразных элементов систем письменности:</p>
60
<p>Это привело к тому, что в 1991 году некоммерческая организация "Консорциум Юникода" представила свою собственную разработку кодирования данных. Она получила название Unicode. Применение соответствующего стандарта позволяет закодировать очень много разнообразных элементов систем письменности:</p>
61
<ul><li>математические компоненты;</li>
61
<ul><li>математические компоненты;</li>
62
<li>буквы кириллицы, латиницы, греческого алфавита;</li>
62
<li>буквы кириллицы, латиницы, греческого алфавита;</li>
63
<li>элементы музыкальной нотной нотации;</li>
63
<li>элементы музыкальной нотной нотации;</li>
64
<li>китайские и японские иероглифы.</li>
64
<li>китайские и японские иероглифы.</li>
65
</ul><p>При использовании "Юникода" переключаться между кодовыми таблицами не нужно. Этот стандарт включает в себя две части: универсальный символьный набор (UCS), а также семейство кодировок (UTF). В первом случае код выражается неотрицательным целым числом, записываемым в шестнадцатеричной форме с префиксом U+. Во втором случае определяются способы преобразования кодов для передачи в файлах или потоках.</p>
65
</ul><p>При использовании "Юникода" переключаться между кодовыми таблицами не нужно. Этот стандарт включает в себя две части: универсальный символьный набор (UCS), а также семейство кодировок (UTF). В первом случае код выражается неотрицательным целым числом, записываемым в шестнадцатеричной форме с префиксом U+. Во втором случае определяются способы преобразования кодов для передачи в файлах или потоках.</p>
66
<h3>UTF-32</h3>
66
<h3>UTF-32</h3>
67
<p>Unicode предусматривает несколько интерпретаций. Каждая из них поддерживает свои ключевые особенности. Первой вариацией упомянутого стандарта стал UTF-32. Цифра в его названии указывает на количество бит, используемых для кодирования одного элемента.</p>
67
<p>Unicode предусматривает несколько интерпретаций. Каждая из них поддерживает свои ключевые особенности. Первой вариацией упомянутого стандарта стал UTF-32. Цифра в его названии указывает на количество бит, используемых для кодирования одного элемента.</p>
68
<p>32 бита - это 4 байта данных. Столько необходимо для одного единственного знака в универсальной кодировке UTF. Это привело к тому, что один и тот же файл с текстом, закодированный в ASCII и UTF-32, в последнем случае будет весить в 4 раза больше. Это плохо, зато пользователи смогли с таким методом шифровать миллиарды печатных элементов и знаков.</p>
68
<p>32 бита - это 4 байта данных. Столько необходимо для одного единственного знака в универсальной кодировке UTF. Это привело к тому, что один и тот же файл с текстом, закодированный в ASCII и UTF-32, в последнем случае будет весить в 4 раза больше. Это плохо, зато пользователи смогли с таким методом шифровать миллиарды печатных элементов и знаков.</p>
69
<h3>UTF-16</h3>
69
<h3>UTF-16</h3>
70
<p>Количество доступных для шифрования знаков при помощи UTF-32 многим языкам не требовалось. Это только приводило к образованию очень "тяжелых" исходных файлов, а также приводило к увеличению объема интернет-трафика и хранимых сведений. Подобное расточительство в годы развития кодировок мало кто мог себе позволить.</p>
70
<p>Количество доступных для шифрования знаков при помощи UTF-32 многим языкам не требовалось. Это только приводило к образованию очень "тяжелых" исходных файлов, а также приводило к увеличению объема интернет-трафика и хранимых сведений. Подобное расточительство в годы развития кодировок мало кто мог себе позволить.</p>
71
<p>Это привело к появлению новой вариации стандарта - UTF-16. Она стала настолько удачной, что была принята в качестве базового пространства всех знаков, которые сейчас используются в компьютерах. Для кодирования тут используются всего 2 байта.</p>
71
<p>Это привело к появлению новой вариации стандарта - UTF-16. Она стала настолько удачной, что была принята в качестве базового пространства всех знаков, которые сейчас используются в компьютерах. Для кодирования тут используются всего 2 байта.</p>
72
<p>Посмотреть соответствующую таблицу можно прямо в Windows. Для этого предстоит:</p>
72
<p>Посмотреть соответствующую таблицу можно прямо в Windows. Для этого предстоит:</p>
73
<ol><li>Открыть "Пуск".</li>
73
<ol><li>Открыть "Пуск".</li>
74
<li>Переключиться в "Программы"-"Стандартные".</li>
74
<li>Переключиться в "Программы"-"Стандартные".</li>
75
<li>Выбрать пункт "Служебные".</li>
75
<li>Выбрать пункт "Служебные".</li>
76
<li>Кликнуть по "Таблица символов".</li>
76
<li>Кликнуть по "Таблица символов".</li>
77
<li>Переключиться в "Дополнительные параметры" и включить Unicode.</li>
77
<li>Переключиться в "Дополнительные параметры" и включить Unicode.</li>
78
</ol><p>Теперь у каждого шрифта можно посмотреть представление знаков в виде UTF-16. Соответствующие коды размещаются в левом нижнем углу окна. Они включают в себя 4 шестнадцатеричных цифры.</p>
78
</ol><p>Теперь у каждого шрифта можно посмотреть представление знаков в виде UTF-16. Соответствующие коды размещаются в левом нижнем углу окна. Они включают в себя 4 шестнадцатеричных цифры.</p>
79
<h3>UTF-8</h3>
79
<h3>UTF-8</h3>
80
<p>UTF-8 - это кодировка переменной длины. Еще один стандарт "Юникода", который стал результатом развития информационных технологий. Несмотря на 8 в названии, кодировка действительно имеет переменную длину. Каждый элемент в таблице может быть закодирован последовательностью длиной от 1 до 6 байт.</p>
80
<p>UTF-8 - это кодировка переменной длины. Еще один стандарт "Юникода", который стал результатом развития информационных технологий. Несмотря на 8 в названии, кодировка действительно имеет переменную длину. Каждый элемент в таблице может быть закодирован последовательностью длиной от 1 до 6 байт.</p>
81
<p>На практике в UTF-8 используются от 1 до 4 байт. Все, что находится за пределами этого диапазона, трудно представить. Латинские знаки тут кодируются в 1 байт, как в ASCII.</p>
81
<p>На практике в UTF-8 используются от 1 до 4 байт. Все, что находится за пределами этого диапазона, трудно представить. Латинские знаки тут кодируются в 1 байт, как в ASCII.</p>
82
<p>Если приложение не понимает Unicode, оно все равно сможет работать в UTF-8. Кириллица здесь кодируется в 2 байта, грузинский алфавит - в 3.</p>
82
<p>Если приложение не понимает Unicode, оно все равно сможет работать в UTF-8. Кириллица здесь кодируется в 2 байта, грузинский алфавит - в 3.</p>
83
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em> </p>
83
<p><em>Хотите освоить современную IT-специальность? Огромный выбор курсов по востребованным IT-направлениям есть в <a>Otus</a>!</em> </p>
84
84