От:
Cynic
Дата: 06.03.11 11:03
Оценка:
Народ, подскажите зачем в стандарте UTF-8 выбрали такой причцдливый способ кодирования байтов:
0XXXXXXX - для символа длинной однин байта
110XXXXX 10XXXXXX - для символа длинной два байта
1110XXXX 10XXXXXX 10XXXXXX - для символа длинной три байта
11110XXX 10XXXXXX 10XXXXXX 10XXXXXX - для символа длинной четыре байта
111110XX 10XXXXXX 10XXXXXX 10XXXXXX 10XXXXXX - для символа длинной пять байт
1111110X 10XXXXXX 10XXXXXX 10XXXXXX 10XXXXXX 10XXXXXX - для символа длинной шесть байт
08.03.11 12:56: Перенесено модератором из '.NET' — TK
:)
Re: Кодировка байтов UTF-8 ?
Здравствуйте, Cynic, Вы писали:
C>Народ, подскажите зачем в стандарте UTF-8 выбрали такой причцдливый способ кодирования байтов:
ИМХО:
1. Совместимость с ASCII.
2. Можно найти начало символа начиная с любого места в файле, не анализируя последовательность байтов с начала файла.
Re: Кодировка байтов UTF-8 ?
От:
dilmah
Дата: 06.03.11 11:32
Оценка:
а при чем тут форум дот нет?
Re: Кодировка байтов UTF-8 ?
От:
midcyber
肏
Дата: 06.03.11 12:22
Оценка:
Здравствуйте, Cynic, Вы писали:
C>Народ, подскажите зачем в стандарте UTF-8 выбрали такой причцдливый способ кодирования байтов:
Как бонус — наиболее частые символы будут занимать меньше места
Re: Кодировка байтов UTF-8 ?
1.Наиболее частые символы пакуются одним символом
2.Потокавая синхронизация, то есть старт символа = символ без 10.. в начале.
Re[2]: Кодировка байтов UTF-8 ?
От:
dilmah
Дата: 08.03.11 10:11
Оценка:
на первом месте конечно то что ASCII(-7) строка является утф-8 строкой. И то что аски-подстроки можно искать обычным побайтовым поиском.
Re: Кодировка байтов UTF-8 ?
Здравствуйте, Cynic, Вы писали:
Ну, таки во-первых, переменная длина. По сравнению с шестью байтами на символ -- экономия размера.
И про что явно не сказали: при порче одного байта портится один символ: представь себе, например, что из потока двухбайтных символов вырезаем один байт. Естественно, начиная с этого символа и до конца ВСЁ потеряно. Тут вырезаем байт -- теряем символ, дальше восстанавливаемся...
Пока на собственное сообщение не было ответов, его можно удалить.
Удалить