ГОСТ Р ИСО/МЭК 8825-3—2016
-
Этот объект кодирования указывает, что вспомогательньш
детерминант используется в качестве
-
детерминанта альтернативы.
auxSelectorEncoding «AuxSelector ::= {
USE «BITS
-E C N Хаффман
-ДИАПАЗОН (0— 7)
-
(0
—
1) занимают 60 %
- (2
—
4) занимают 30 %
- (5
—
7) занимают 10 %
-
Определение конца (End Definition)
- Отображения, которые вырабатывает ’ECN Public
- Domain Software lor Huffman encodings, version 1
"
-
(см. E.8).
MAPPING TO BITS {
0.. 1TO’10B ..ЧГВ,
2 .. 4 TO ‘001‘B .. 011’B.
5 TO ЧЮ0ГВ,
6.. 7 TO ‘ООООО’В .. ’00001’B}
WITH PER-BASIC-UNALIGNED }
—
Второе отображение: Отображает индексы детерминанта в цепочки битов.
D.2.10.5 Выше мы определили количественно «frequent», «common» и «гаге» как 60. 30 и 10 % соответствен
но и применили генератор ECN Хаффмана для области общего использования (см. Е.8) при определении опти
мальных комбинаций битов, которые следует использовать для каждого диапазона целых чисел.
D.2.10.6 Вышеприведенное является оптимальным в математическом смысле, но разница, которая получа
ется в процентах от общего трафика, зависит от того, какие другие части содержит протокол. Если попытки реали
зации обеспечения и использования оптимального кодирования ничего не стоят (так как могут быть использованы
инструменты), конечные выгоды могут быть не важны.
D.2.11 Сообщение версии 1
D.2.11.1 Присвоение АСН.1:
Version 1Message ::= SEQUENCE {
ie-1 BOOLEAN.
ie-2 INTEGER (0..20)}
Мы хотим использовать PER basic unaligned, но намереваемся добавить еще поля в версию 2 ижелаем ука
зать. что системы версии 1должны принимать и игнорировать любой дополнительный материал в PDU.
D.2.11.2 Мы используем две структуры кодирования для кодирования сообщения: первая является неявно
генерируемой структурой кодирования, содержащей только поля версии 1. а вторая является структурой, которую мы
определяем и которая содержит поля версии 1 плюс поле заполнения с переменной длиной, которое прости рается
до конца PDU. Система версии 1 использует первую структурудля кодирования, а вторую — для декодиро
вания. Не считая этот подход к расширяемости, все кодовые последовательности являются PER basic unaligned.
Структурой кодирования версии 1является:
«Versionl DecodingStructure ::= «CONCATENATION {
ie-1 «BOOL.
ie-2 #INT (0..20),
future-additions «PAD}
D.2.11.3 Присвоениями обьекта кодирования являются:
versionl MessageEncoding «VersionlMessage{
ENCODE-DECODE
{ENCODE WITH PER-BASIC-UNALIGNED }
DECODE AS IF decodingSpecification}
decodingSpecification «VersionlMessage ::= {
USE «VersionlDecodingStructure
MAPPING FIELDS
WfTH{
ENCODE STRUCTURE{
181