ГОСТ Р ИСО/МЭК 8825-3—2016
П р и м е ч а н и е — В попункте 23.12.4.2 указано, что декодеры должны принимать любое значение для
битов
«PAD.
что нам здесь необходимо, поэтому нам не требуются особые кодер-декодер.
D.4.3.6 Мы определяем объект кодирования для нашей структуры почти так же. как в первом подходе
(см. D.4.2.5):
profilelndicationStructEncoding «ProfileIndicationStruct ::= {
ENCODE STRUCTURE{
STRUCTURED WITH
more-bit-encoding {< more-bit-field >} }
WITH {pad-encoding} COMPLETED BY PER-BASIC-UNALIGNED }
D.4.3.7 Наконец, мы используем отображение значения от неявно генерируемой структуры к нашей явно
генерируемой структуре, чтобы определить наше окончательное кодирование:
profilelndication2Encoding «Profilelndication2 ::= {
USE «ProfilelndicationStruct
MAPPING FIELDS
WITH profilelndicationStructEncoding }
D.4.4 Использование механизма замены для обеспечения детерминанта «бит-еще»
D.4.4.1 При нашем последнем подходе мы определяем обобщенное кодирование «последовательности-из».
которое можно применять к любой «последовательности-из». Для этого нам нужна параметризованная структура
кодирования:
«SequenceOfStruct {< «Component >} ::=
«SEQUENCE{
more-bit-field «BOOLEAN,
reserved «PAD.
sequence-of-component «Component}
D.4.4.2 Мы определяем наше кодирование «последовательности-из»для выполнения замены компонента на
эту структуру, учитывая кодирование «бит-еще» и используя определенное кодирование PAD:
sequence-of-encoding «SEQUENCE-OF ::= {
REPETITION-ENCODING {
REPLACE COMPONENT WITH «SequenceOfStruct
REPETITION-SPACE
SIZE variable-with-determinant
DETERMINED BY flag-to-be-set
USING more-bit-field
ENCODER-TRANSFORMS
{ { BOOL-TO-BOOL AS logicahnot } } } }
D.4.4.3 Когда это применяется в ELM. то для того, чтобы завершить кодирование, дающее желательный
результат, используется
«COMPLETED BY PER-BASIC-UNALIGNED»
в виде комбинированного набора объектов
кодирования.
D.5 Традиционный протокол, описанный с помощью табличной нотации
D.5.1 Введение
D.5.1.1 Цель примера в этом разделе — показать, как конструировать определения ECN для протокола,
кодирования сообщения которого специфицированы с использованием изображений «биты и байты» и табличной
нотации.
Следующие таблицы показывают содержимое сообщений (полностью показано только «Сообщение 1»):
Сообщение 1:
87664321
Октет 1Идентификатор сообщения
Октет 2Аb-flagc-lenРезерв
190