Изменения
Нет описания правки
Затем на ее базе была разработана ASCII8, в которым уже стало возможным хранение 256 символов: 128 основных и еще столько же расширенных. Первая часть таблицы осталась без изменений, а вторая может иметь различные варианты (каждый имеет свой номер). Эта часть таблицы стала заполняться символами национальных алфавитов.
Но для многих языков (например, арабского, японского, китайского) 256 символов недостаточно, поэтому развитие кодировок продолжалось, что привело к появлению UNICODE.
== Наиболее известные кодировки ==
===Кодировки стандарта ASCII===
{{Определение
|definition=ASCII - таблицы кодировок, в которых содержатся основные символы (английский алфавит, цифры, знаки препинания, символы национальных алфавитов(свои для каждого региона), служебные символы) и длина кода каждого символа <tex>n = 8</tex> бит.
}}
''7 бит:''
* '''Windows-1251''' - русская кодировка, использовавшаяся в русскоязычных версиях операционной системы Windows в начале 90-х годов. Кириллические символы идут в алфавитном порядке. Содержит все символы, встречающиеся в типографике обычного текста (кроме знака ударения).[http://ru.wikipedia.org/wiki/CP1251]
===Кодировки стандарта UNICODE===
{{Определение
|definition=UNICODE - таблицы кодировок, в которых содержатся все используемые символы и длина кода каждого символа <tex>n \geq 8</tex> бит.
}}
* '''UTF8''' - самая распространенная на данный момент кодировка из семейства UNICODE. [http://ru.wikipedia.org/wiki/UTF-8]
{|class="standardwikitable"
!Unicode||UTF-8||Представленные символы
|-
Также возможны коды длиной в 5 и 6 байт, но на практике они не используются. Это связано с тем, что в стандарт Unicode не входят символы с кодом выше <code>0x10ffff</code>.
====BOM====
'''Byte Order Mark (BOM)(''метка порядка байтов'')''' - Unicode символ, используемый для индикации порядка байтов текстового файла. Его кодовый символ U+FEFF (ZERO WIDTH NON-BREAKING SPACE)''неразрывный пробел с нулевой шириной'', также именуемый . По спецификации его использование не является обязательным, однако если BOM используется, то он должен быть установлен вначале текстового файла. Помимо своего конкретного использования в качестве указателя порядка байтов, символ может также указать какой кодировкой Unicode закодирован текст.
[[Файл:Bom.png|thumb|leftright| 400px]]В кодировке UTF-8, наличие BOM не является существенным, поскольку, нет альтернативной последовательности байтов. Когда BOM используется на страницах или редакторах для контента закодированного в UTF-8, иногда он может представить пробелы или короткие последовательности символов, имеющие странный вид (такие как ). Именно поэтому, при наличии выбора, для совместимости, как правило, лучше упустить BOM в UTF-8 контенте.Однако BOM могут еще встречаться в тексте закодированном в UTF-8, как побочный продукт перекодирования или потому, что он был добавлен редактором. В этом случае BOM часто называют подписью UTF-8.
{| class="wikitable"
|+'''Представление BOM в кодировках'''
|-
! Кодирование
|-
|}
В кодировке UTF-8, наличие BOM не является существенным, поскольку, нет альтернативной последовательности байтов. Когда BOM используется на страницах или редакторах для контента закодированного в UTF-8, иногда он может представить пробелы или короткие последовательности символов, имеющие странный вид (такие как ). Именно поэтому, при наличии выбора, для совместимости, как правило, лучше упустить BOM в UTF-8 контенте.Однако BOM могут еще встречаться в тексте закодированном в UTF-8, как побочный продукт перекодирования или потому, что он был добавлен редактором. В этом случае BOM часто называют подписью UTF-8.
Когда символ закодирован в UTF-16, его 2 или 4 байта можно упорядочить двумя разными способами (little-endian или big-endian). Изображение справа показывает это.Byte order mark указывает, какой порядок используется, так что приложения могут немедленно расшифровать контент. UTF-16 контент должен всегда начинатся с BOM.
BOM также используется для текста обозначенного как UTF-32. Аналогично UTF-16 существует два варианта четырёхбайтной кодировки — UTF-32BE и UTF-32LE.К сожалению, этот способ не позволяет надёжно различать UTF-16LE и UTF-32LE, поскольку символ U+0000 допускается Юникодом
== Ссылки ==