-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Добавил статью о кириллическом расширении ASCII, дополнил список испо…
…льзованных источников
- Loading branch information
Showing
7 changed files
with
88 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Binary file added
BIN
+35.5 KB
...ие информации/Кириллическое расширение ASCII.assets/image-20220712030144974.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+29.8 KB
...ие информации/Кириллическое расширение ASCII.assets/image-20220712035636074.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added
BIN
+40.2 KB
...ие информации/Кириллическое расширение ASCII.assets/image-20220712043712091.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
75 changes: 75 additions & 0 deletions
75
docs/Кодирование информации/Кириллическое расширение ASCII.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,75 @@ | ||
# Кириллическое расширение ASCII | ||
|
||
Таблица ASCII являлась отправной точкой для развития всех современных кодировок. Изначально в нее было заложено только 128 знаков латинского алфавита, арабских цифр, знаков препинания и управляющих символов, но в расширенной версии появилась возможность использовать все 256 значений, которые можно закодировать в одном байте информации. Т.е. появилась возможность добавить в ASCII символы букв своего языка. | ||
|
||
## CP866 | ||
|
||
Одним из первых таких расширений выступила таблица **CP866** (**C**ode**p**age **866**), в которой была возможность использовать символы русского алфавита. Первые 128 ее символов полностью соответствовали ASCII, а вот уже нижняя часть таблицы позволяла закодировать еще 128 знаков (русские буквы и всякая там псевдографика): | ||
|
||
<figure markdown> | ||
![CP866](Кириллическое расширение ASCII.assets/image-20220712030144974.png) | ||
<figcaption>CP866</figcaption> | ||
</figure> | ||
|
||
Откуда взялось такое количество псевдографики в CP866? Тут все дело в том, что эта кодировка для русского текста разрабатывалась еще в те года, когда графические операционные системы не были распространены как сейчас. А в DOS’е и подобных ей текстовых операционных системах псевдографика позволяла хоть как-то разнообразить оформление текстов и поэтому ею изобилует CP866 и все другие ее ровесницы из разряда расширенных версий ASCII. | ||
|
||
CP866 распространяла компания IBM, но кроме этого для символов русского языка были разработаны еще ряд кодировок. | ||
|
||
## КОИ-8 | ||
|
||
**КОИ-8** (**К**од **о**бмена **и**нформацией **8** бит, *KOI8*) | ||
|
||
Разработчики КОИ-8 поместили символы русского алфавита в верхней части кодовой таблицы таким образом, что позиции кириллических символов соответствуют их фонетическим аналогам в английском алфавите в нижней части таблицы. Это означает, что если в тексте, написанном в КОИ-8, убрать восьмой бит каждого символа, то получится «читаемый» текст, подобный транслиту. Например, слово «Информатика» превратится в «iNFORMATIKA». Как побочное следствие, символы кириллицы оказались расположены не в алфавитном порядке. | ||
|
||
Существует несколько вариантов кодировки КОИ-8 для различных кириллических алфавитов. Русский алфавит описывается в кодировке **KOI8-R**, украинский — в **KOI8-U**, кавказский **KOI8-C** и т.д. | ||
|
||
KOI8-R стал фактически стандартом для русской кириллицы в 1990-х годах в электронной почте. | ||
|
||
<figure markdown> | ||
![KOI8-R](Кириллическое расширение ASCII.assets/image-20220712035636074.png) | ||
<figcaption>KOI8-R</figcaption> | ||
</figure> | ||
## Windows-1251 | ||
|
||
Windows-1251 выгодно отличается от других 8‑битных кириллических кодировок наличием практически всех символов, использующихся в русской типографике для обычного текста (отсутствует только значок ударения); Она также содержит все символы для других славянских языков: украинского, белорусского, сербского, македонского и болгарского. | ||
|
||
Разработка Windows-1251 велась русским представительством Microsoft совместно с компаниями «Диалог» и «Параграф». | ||
|
||
<figure markdown> | ||
![Windows-1251](Кириллическое расширение ASCII.assets/image-20220712043712091.png) | ||
<figcaption>Windows-1251</figcaption> | ||
</figure> | ||
|
||
## Кракозябры | ||
|
||
Из-за такого обилия кодировок русского языка, у производителей шрифтов и производителей программного обеспечения постоянно возникала головная боль, а у нас с вам, зачастую вылезали те самые пресловутые **кракозябры**, когда происходила путаница с используемой в тексте версией. | ||
|
||
Вот, например, какие кракозябры могут появиться при неправильной перекодировке слова «Информатика» | ||
|
||
| оригинальная кодировка | отображаемая кодировка | результат | | ||
| :--------------------: | :--------------------: | :--------------------: | | ||
| CP866 | КОИ-8 | ┬╜Д╝Ю╛═Б╗╙═ | | ||
| CP866 | Windows-1251 | €д®а¬ вЁЄ | | ||
| CP866 | UTF-8 | ���ଠ⨪� | | ||
| КОИ-8 | CP866 | щ╬╞╧╥═┴╘╔╦┴ | | ||
| КОИ-8 | Windows-1251 | йОЖПТНБФЙЛБ | | ||
| КОИ-8 | UTF-8 | ����������� | | ||
| Windows-1251 | CP866 | ╚эЇюЁьрЄшър | | ||
| Windows-1251 | КОИ-8 | хМТНПЛЮРХЙЮ | | ||
| Windows-1251 | UTF-8 | ����������� | | ||
| UTF-8 | CP866 | ╨Ш╨╜╤Д╨╛╤А╨╝╨░╤В╨╕╨║╨░ | | ||
| UTF-8 | КОИ-8 | п≤п╫я└п╬я─п╪п╟я┌п╦п╨п╟ | | ||
| UTF-8 | Windows-1251 | �нформатика | | ||
|
||
Очень часто они вылезали при отправке и получении сообщений по электронной почте, что повлекло за собой создание очень сложных перекодировочных таблиц, которые, собственно, решить эту проблему в корне не смогли, и зачастую пользователи для переписки использовали транслит латинских букв. | ||
|
||
По сути, кракозябры, появляющиеся вместо русского текста, были результатом некорректного использования кодировки данного языка, которая не соответствовала той, в которой было закодировано текстовое сообщение изначально. | ||
|
||
В конце концов такая ситуация с множеством кодировок многим надоела, появились предпосылки к созданию новой универсальной вариации, которая бы заменила собой все существующие и решила бы проблему с появлением не читаемых текстов. Кроме этого существовала проблема языков подобных китайскому, где символов языка было гораздо больше, чем 256. | ||
|
||
## Список использованных источников | ||
|
||
1. КОИ-8 [Электронный ресурс] URL: [https://dic.academic.ru/dic.nsf/ruwiki/11979](https://dic.academic.ru/dic.nsf/ruwiki/11979) (дата обращения: 12.07.2022) | ||
2. Кодировка текста ASCII (Windows 1251, CP866, KOI8-R) и Юникод (UTF 8, 16, 32) — как исправить проблему с кракозябрами [Электронный ресурс] URL: [https://javarush.ru/groups/posts/1418-kodirovka-teksta-ascii-windows-1251-cp866-koi8-r-i-junikod-utf-8-16-32--kak-ispravitjh-problemu](https://javarush.ru/groups/posts/1418-kodirovka-teksta-ascii-windows-1251-cp866-koi8-r-i-junikod-utf-8-16-32--kak-ispravitjh-problemu) (дата обращения: 12.07.2022) | ||
3. Декодер онлайн [Электронный ресурс] URL: [https://involta.ru/tools/decoder/](https://involta.ru/tools/decoder/) (дата обращения: 12.07.2022) | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters