Применение искинов - шоссе империализма (Стенгазета русификаторов ИТ)

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



КРЯ-8 - альтернатива УПС-8 (UTF-8)

Сообщений 1 страница 3 из 3

1

Ранее по теме:
2024-09-05, Юникод (Unicode) и УПС-8 (UTF-8)
2022-12-26, Строки, хранение и обработка
2022-12-14, Строки, хранение и обработка
2018-12-27, Названия для языков программирования
2018-09-24, Машкод

Отредактировано Лис (2024-09-05 05:27:46)

0

2

См. ранее
УТКА - альтернатива таблице кодепоинтов Юникода

Борис К. слился с темы, не потянул...

Поправим таблицу с учетом пожеланий Лиса:

▫ ▫ ▫ ▫ ▫ ▫ ▫ ▫ ▪ ▪ ▪ ▪ ▪ ▪ ▪ ▪
А Б В Г Д Е Ё Ж З И Й К Л М Н О
П Р С Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю
Я Ѣ І Ѳ Ѵ Ѯ Ѱ Ѡ Ѕ Ҷ Ӷ Ҳ Ҫ Қ Ў Ӂ
А́ Е́ И́ О́ У́ Ы́ Э́ Ю́ Я́ Ё́ Ѣ́ І́ Ѵ́ Ѡ́ Ӓ Ӧ
А̀ Ѐ Ѝ О̀ У̀ Ы̀ Э̀ Ю̀ Я̀ Ё̀ Ѣ̀ І̀ Ѵ̀ Ѡ̀ Ѿ Ѣ̈
а б в г д е ё ж з и й к л м н о
п р с т у ф х ц ч ш щ ъ ы ь э ю
я ѣ і ѳ ѵ ѯ ѱ ѡ ѕ ҷ ӷ ҳ ҫ қ ў ӂ
а́ е́ и́ о́ у́ ы́ э́ ю́ я́ ё́ ѣ́ і́ ѵ́ ѡ́ ӓ ӧ
а̀ ѐ ѝ о̀ у̀ ы̀ э̀ ю̀ я̀ ё̀ ѣ̀ і̀ ѵ̀ ѡ̀ ѿ ѣ̈
0 1 2 3 4 5 6 7 8 9 ∞ ∅ § № % ҂
. , : ; - — ? ! ( ) [ ] { } _ |
+ − × / ^ √ < > = ≤ ≥ ≠ ≈ ± ∙ \
« » „ “ ’ ° ′ ″ ← ↑ → ↓ □ △ ◇ ∠
¬ ∧ ∨ ⊻ ∩ ∪ ⊂ ⊆ ∈ ∉ ∥ ⟂ ▪ ▪ ▪ ▪

Непечатные символы:

0 терминальный ноль
1 пробел
2 табуляция
3 новая строка
4 неразрывный пробел
5 математический пробел
6 нулевой пробел
7 перенос

8-15 и 252-255 — временно не распределенные позиции, самые важные (продать при обсуждении стандарта).

А тут ещё работать и работать. Прежде всего не учтено, что при кодировке типа UTF-8 нужно использовать только половину от таблицы, то есть выбрать 128 наиболее важных символов.

Во-вторых, все управляющие коды надо переделать, не знаю как. И Лис хотел титло, но был проигнорирован. Вот и всё.

Вариант полутаблицы на 128 символов:
Подсчёт:
16 - титло над буквой
33 - малые буквы
33 - заглавные буквы
46 - прочих символов
128 всего

Детализация:

Код:
титло над буквой -
о҃  а҃  б҃  в҃  г҃  д҃  е҃  ё҃  ж҃  з҃  и҃  й҃  к҃  л҃  м҃  н҃ 

малые буквы

Знаки пунктуации - д҃  символов (после малых букв, для выравнивания)
, - запятая
,- - запятая-тире (для библиографии)
- - короткое тире для связи слов (дефис)
--- - длинное тире для предложений (тире)
... - многоточие

гласные под вторичным слабым ударением - и҃ символов

заглавные буквы

Знаки пунктуации - д҃ символов (после заглавных букв, для выравнивания)
: - двоеточие
; - точка-с-запятой
! - восклицательный знак
? - вопросительный знак
. - точка

гласные под ударениями - и҃ символов

Скобки - и҃ символов
( - открывающая круглая скобка
) - закрывающая круглая скобка
[ - открывающая квадратная скобка
] - закрывающая квадратная скобка
{ - открывающая фигурная скобка
} - закрывающая фигурная скобка
< - открывающая угловая скобка
> - закрывающая угловая скобка
" - открывающая русская кавычка
" - закрывающая русская кавычка

Дополнительные символы - е҃ штук
_ - подчёркивание
\ - обратная черта
| - прямая черта
/ - косая черта
' - апостроф (одиночная прямая (компьютерная) кавычка) 
" - двойная прямая (компьютерная) кавычка

Не влезли:

Разделители строк и слов (см. сообщение ниже)

« - открывающая французская альтернативная кавычка для длинных цитат
» - закрывающая французская альтернативная кавычка для длинных цитат

индийские цифры

латинский символ номера

прочие разные символы - @, &, %, ^
будем их считать математическими и поместим в двухбайтовые.

Отредактировано Лис (Сегодня 04:46:07)

0

3

1xxxxxxx - семибитовый символ (из таблицы на 128 символов выше)
Если байт выглядит как 01xxxxxx, то является продолжающим байтом символа и содержит в себе 6 битов информации о символе.
001xxxxx - начало двухбайтового кода
0001xxxx - начало трёхбайтового кода
00001xxx - начало четырёхбайтового кода
000001xx - начало пятибайтового кода
0000001x - начало шестибайтового кода
00000001 - разделитель слов
00000000 - разделитель строк

Таким образом, ту таблицу можно сочетать со стандартной ASCII (в верхней половине),
кодировать тексты независимо от нижней части (это то, до чего не дошли наши заимствователи-сдирокопиры)

BOM (трёхбайтовый префикс для идентификации кодировки КРЯ-8) выглядит как
00010000 00000001 00000000 - для LSB
пока не знаю как - для MSB

пробел в ASCII, SOH и конец строки
SOH (Start of Heading) - это первый символ в ASCII таблице с кодом 1 (00000001 в двоичной системе счисления).
Это управляющий символ, который использовался в ранних компьютерных системах
для обозначения начала заголовка сообщения или блока данных.

Теперь осталось все прочие символы как-то закодировать и составить таблицы отображения на Unicode.

См. ранее
Ищу кодировку

Отредактировано Лис (Сегодня 02:42:57)

0