Ascii85

Матеріал з Вікіпедії — вільної енциклопедії.
Версія від 15:50, 21 листопада 2014, створена ZatulyViter (обговорення | внесок) (Створена сторінка: '''Ascii85''', також відома як '''Base85''' - форма кодування двійкових даних, розроблена для утиліт...)
(різн.) ← Попередня версія | Поточна версія (різн.) | Новіша версія → (різн.)
Перейти до навігації Перейти до пошуку

Ascii85, також відома як Base85 - форма кодування двійкових даних, розроблена для утиліти btoa. Використовуючи 5 ASCII літер для представлення 4 байтів двійкових даних (що робить розмір закодованих даних на чверть більшим за оригінал, в разі використання 8-бітних ASCII символів), тому це кодування краще за uuencode і Base64, які для представлення 3х байтів використовують 4 символи (розмір збільшується на третину за тих же умов).

Нині головним чином використовується у файлових форматах PostScript компанії Adobe та Portable Document Format.

Головна ідея

Головна потреба в текстовому кодуванні двійкових даних витікає з необхідності передавати двійкові дані існуючими протоколами, які розроблялися для передачі лише зрозумілого людині тексту. Такими протоколами безпечно надсилати лише 7-бітні дані (то того ж потрібно уникати використання керуючих кодів ASCII) та інколи потрібно додавати символу закінчення рядку для обмеження довжини рядків і не містити пробілів. Тобто, "безпечно" використовувати лише 94 друковані літери ASCII.

Версія Adobe

Приклад

Наприклад, історичне гасло Вікіпедії,

Man is distinguished, not only by his reason, but by this singular passion from other animals, which is a lust of the mind, that by a perseverance of delight in the continued and indefatigable generation of knowledge, exceeds the short vehemence of any carnal pleasure.

виглядає у Ascii85 кодуванні наступним чином:

<~9jqo^BlbD-BleB1DJ+*+F(f,q/0JhKF<GL>Cj@.4Gp$d7F!,L7@<6@)/0JDEF<G%<+EV:2F!,
O<DJ+*.@<*K0@<6L(Df-\0Ec5e;DffZ(EZee.Bl.9pF"AGXBPCsi+DGm>@3BB/F*&OCAfu2/AKY
i(DIb:@FD,*)+C]U=@3BN#EcYf8ATD3s@q?d$AftVqCh[NqF<G:8+EV:.+Cf>-FD5W8ARlolDIa
l(DId<j@<?3r@:F%a+D58'ATD4$Bl@l3De:,-DJs`8ARoFb/0JMK@qB4^F!,R<AKZ&-DfTqBG%G
>uD.RTpAKYo'+CT/5+Cei#DII?(E,9)oF*2M7/c~>

Cумісність

Ascii85 кодування сумісне з 7-бітним та 8-бітним MIME, маючи менший розмір ніж Base64.

Єдина проблема полягає в тому, що кодування Ascii85 містить символи('одинарні' та "подвійні" лапки, прямі дужки та амперсанд (&)), які мають бути екрановані в мовах розмітки наподобі XML або SGML.

Дивіться також

Посилання