~~~~~~~~~~~~~~~~~~~~ Arc.Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~ 
Номер скриншота №:
✰ 29D952511963B164CFE1E6DA637CF4A0__1712199960 ✰
Заголовок документа оригинал.:
✰ Binary Ordered Compression for Unicode - Wikipedia ✰
Заголовок документа перевод.:
✰ Двоичное упорядоченное сжатие для Юникода — Википедия ✰
Снимок документа находящегося по адресу (URL):
✰ https://en.wikipedia.org/wiki/Binary_Ordered_Compression_for_Unicode ✰
Адрес хранения снимка оригинал (URL):
✰ https://arc.ask3.ru/arc/aa/29/a0/29d952511963b164cfe1e6da637cf4a0.html ✰
Адрес хранения снимка перевод (URL):
✰ https://arc.ask3.ru/arc/aa/29/a0/29d952511963b164cfe1e6da637cf4a0__translat.html ✰
Дата и время сохранения документа:
✰ 15.06.2024 18:14:52 (GMT+3, MSK) ✰
Дата и время изменения документа (по данным источника):
✰ 4 April 2024, at 06:06 (UTC). ✰ 

~~~~~~~~~~~~~~~~~~~~~~ Ask3.Ru ~~~~~~~~~~~~~~~~~~~~~~ 
Сервисы Ask3.ru: 
 Архив документов (Снимки документов, в формате HTML, PDF, PNG - подписанные ЭЦП, доказывающие существование документа в момент подписи. Перевод сохраненных документов на русский язык.)https://arc.ask3.ruОтветы на вопросы (Сервис ответов на вопросы, в основном, научной направленности)https://ask3.ru/answer2questionТоварный сопоставитель (Сервис сравнения и выбора товаров) ✰✰
✰ https://ask3.ru/product2collationПартнерыhttps://comrades.ask3.ru


Совет. Чтобы искать на странице, нажмите Ctrl+F или ⌘-F (для MacOS) и введите запрос в поле поиска.
Arc.Ask3.ru: далее начало оригинального документа

Двоичное упорядоченное сжатие для Юникода — Википедия Jump to content

Двоичное упорядоченное сжатие для Юникода

Из Википедии, бесплатной энциклопедии

Двоичное упорядоченное сжатие для Юникода ( BOCU ) — это MIME- совместимая схема сжатия Юникода. BOCU-1 сочетает в себе широкую применимость UTF-8 с компактностью стандартной схемы сжатия для Unicode (SCSU). Эта Unicode кодировка предназначена для сжатия коротких строк и поддерживает порядок кодовых точек. BOCU-1 указан в Техническом примечании Unicode. [1]

Для сравнения SCSU был принят в качестве стандартной схемы сжатия Unicode с соотношением байт/кодовая точка, аналогичным кодовым страницам для конкретного языка . SCSU не получил широкого распространения, поскольку не подходит для «текстовых» типов мультимедиа MIME. Например, SCSU нельзя использовать непосредственно в электронной почте и подобных протоколах. Для обеспечения хорошей производительности SCSU требуется сложная конструкция кодера. Обычно zip , bzip2 и другие стандартные алгоритмы более эффективно сжимают большие объемы текста в Юникоде. [2]

Оба ГКСУ [3] и БОКУ-1 [4] являются зарегистрированными IANA кодировками.

Подробности [ править ]

Все числа в этом разделе являются шестнадцатеричными , и все диапазоны включаются.

Кодовые точки из U+0000 к U+0020кодируются в BOCU-1 как соответствующее значение байта. Все остальные кодовые точки (т. е. U+0021 через U+D7FF и U+E000 через U+10FFFF) кодируются как разница между кодовой точкой и нормализованной версией самой последней кодированной точки, которая не была пространством ASCII ( U+0020). Исходное состояние U+0040. Отображение нормализации выглядит следующим образом:

Диапазон кода Нормализованная кодовая точка Примечания
U+3040 к U+309F U+3070 Хирагана
U+4E00 к U+9FA5 U+7711 Объединяйтесь
U+AC00 к U+D7A3 U+C1D1 хангыль
U+0020 состояние энкодера сохраняется как есть Космос
U+hhhh00 к U+hhhh7F
(исключая диапазоны, указанные выше)
U+hhhh40 середина
из 128
U+hhhh80 к U+hhhhFF
(исключая диапазоны, указанные выше)
U+hhhhC0 середина
из 128

Разница между текущей кодовой точкой и нормализованной предыдущей кодовой точкой кодируется следующим образом:

Диапазон различий Диапазон последовательности байтов
(см. ниже)
-10FF9F к -2DD0D 21 F0 58 D9 к 21 FF FF FF
-2DD0C к -2912 22 01 01 к 24 FF FF
-2911 к -41 25 01 к 4F FF
-40 к 3F 50 к CF
40 к 2910 D0 01 к FA FF
2911 к 2DD0B FB 01 01 к FD FF FF
2DD0C к 10FFBF FE 01 01 01 к FE 19 B4 54

Каждый диапазон байтов упорядочен лексикографически, за исключением следующих тринадцати байтовых значений: 00 07 08 09 0A 0B 0C 0D 0E 0F 1A 1B 20. Например, последовательность байтов FC 06 FF, кодирование для разницы 1156B, сразу за ним следует последовательность байтов FC 10 01, кодирование для разницы 1156C.

Любой ввод ASCII U+0000 к U+007F исключая пространство U+0020 сбрасывает энкодер в U+0040. Поскольку вышеупомянутые значения охватывают точки кода конца строки. U+000D и U+000A как есть ( 0D 0A), кодер находится в известном состоянии в начале каждой строки. Таким образом, повреждение одного байта затрагивает не более одной строки. Для сравнения, повреждение одного байта в UTF-8 влияет не более чем на одну кодовую точку, а в SCSU — на весь документ.

BOCU-1 обеспечивает аналогичную надежность и для входных текстов без вышеупомянутых значений со специальным кодом сброса. 0xFF. Когда декодер находит этот октет, он сбрасывает свое состояние на U+0040что касается конца строки. Использование 0xFF байты сброса не рекомендуется в спецификации BOCU-1, поскольку это противоречит другим целям проектирования BOCU-1, особенно двоичному порядку .

Необязательное использование подписи U+FEFF в начале закодированных текстов BOCU-1, т.е. последовательности байтов BOCU-1. FB EE 28, меняет исходное состояние U+0040 к U+FEC0. Другими словами, подпись нельзя просто удалить, как в большинстве других схем кодирования Unicode. Добавление байта сброса после подписи ( FB EE 28 FF) можно было бы избежать этого эффекта, но спецификация BOCU-1 не рекомендует такую ​​практику.

Теоретически UTF-1 и UTF-8 могут кодировать исходный набор UCS-4 с 31 битом до 7FFFFFFF. BOCU-1 и UTF-16 могут кодировать современный набор Unicode из U+0000 к U+10FFFF. За исключением тринадцати защищенных кодовых точек, закодированных как одиночные октеты, которые BOCU-1 может использовать. октеты в многобайтовых кодировках. BOCU-1 требуется не более четырех байтов, состоящих из начального байта и одного-трех завершающих байтов. Байты следа кодируют оставшуюся разницу « по модулю 243» (по основанию 243), ведущий байт определяет количество байтов следа и начальную разницу. Обратите внимание, что байт сброса 0xFF не защищен и может встречаться как следовой байт.

Патент [ править ]

До 16 ноября 2022 года общий алгоритм BOCU был описан в патенте США № 6,737,994, в котором также упоминается конкретная реализация BOCU-1. [5] Срок действия этого патента истек.

IBM , в которой работали оба изобретателя BOCU-1 на момент его создания, заявила в Техническом примечании Unicode, что разработчики «полностью совместимой версии BOCU-1» должны были связаться с IBM для запроса бесплатной лицензии. [6] BOCU-1 — единственная схема сжатия Unicode, описанная на веб-сайте Unicode, которая, как известно, обременена ограничениями интеллектуальной собственности .

Напротив, IBM также подала заявку на патент на UTF-EBCDIC , но в этом случае решила сделать документацию и схему кодирования «свободно доступными для всех, кто заинтересован в том, чтобы сделать формат преобразования частью стандартов UCS», вместо того, чтобы требовать от разработчиков. запросить лицензию. [7]

Ссылки [ править ]

  1. ^ Маркус Шерер, Марк Дэвис (4 февраля 2006 г.). «УТН №6: БОКУ-1» . Проверено 18 мая 2008 г.
  2. ^ Юэлл, Дуг (30 января 2004 г.). «UTN № 14: Обзор сжатия Unicode» (PDF) . Проверено 13 июня 2008 г.
  3. ^ Запись о регистрации IANA для SCSU.
  4. ^ Запись регистрации IANA для BOCU-1
  5. ^ Дэвис ; и другие. (18 мая 2004 г.). «Патент США № 6,737,994, «Двоично-упорядоченное сжатие для Юникода» » . Проверено 28 декабря 2022 г.
  6. ^ Маркус Шерер, Марк Дэвис (4 февраля 2006 г.). «УТН №6: БОКУ-1» . Проверено 5 февраля 2014 г.
  7. ^ против Умамахесварана (16 апреля 2002 г.). «UTR № 16: UTF-EBCDIC» . Проверено 16 ноября 2008 г.

См. также [ править ]

Arc.Ask3.Ru: конец оригинального документа.
Arc.Ask3.Ru
Номер скриншота №: 29D952511963B164CFE1E6DA637CF4A0__1712199960
URL1:https://en.wikipedia.org/wiki/Binary_Ordered_Compression_for_Unicode
Заголовок, (Title) документа по адресу, URL1:
Binary Ordered Compression for Unicode - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть, любые претензии не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, денежную единицу можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)