ГОСТ Р ИСО/МЭК 8825-3—2016
tagEncoding «TAG ::= {
ENCODING-SPACE
SIZE3
MULTIPLE OF bit
EXHIBITS HANDLE "Tag" AT {0 11 | 2}}
D.1.12.4 Возможно, самым ясным путем обеспечения первого присвоения из D.1.12.3 было бы определение
нового набора объектов кодирования и применение его следующим образом:
MyEncodings «ENCODINGS ::= { tagEncoding } COMPLETED BY PER-BASIC-UNALIGNED
choiceEncoding «Choice ::= {
ENCODE STRUCTURE{
STRUCTURED WITH {
ALTERNATIVE
DETERMINED BY handle
HANDLE ’Tag"}}
WITH MyEncodings)
D.1.13 Кодирование цепочки битов, содержащей другое кодирование
D. 1.13.1 Значение цепочки битов, закодированной методом PER basic unaligned, содержит кодирование по
следовательности из целого числа октетов (с заполнением нулями), но не обязательно выровнена по границе октета.
D.1.13.2 Присвоение АСН.1 равно:
Sequence2 ::= SEQUENCE {
a BOOLEAN.
b BIT STRING (CONTAINING Sequence3) }
Sequence3SEQUENCE {
a INTEGER(0..10),
b BOOLEAN)
D.1.13.3 Присвоениями ECN (см. 25.1) являются:
sequence2Encoding #Sequence2 ::= {
ENCODE STRUCTURE{
b { REPETITION-ENCODING {
REPETITION-SPACE
SIZE 8
MULTIPLE OF bit)
CONTENTS-ENCODING (containerEncoding)
COMPLETED BY PER-BASIC-UNALIGNED}}
WITH PER-BASIC-UNALIGNED}
sequence3Encoding #Sequence3 ::= {
ENCODE STRUCTURE{
STRUCTURED WITH sequence3StructureEncoding
>
WITH PER-BASIC-UNALIGNED }
sequence3StructureEncoding «CONCATENATION{
ENCODING-SPACE
MULTIPLE OF octet
VALUE-PADDING
JUSTIFIED left:0
POST-PADDING zero
UNUSED BITS
DETERMINED BY not-needed }
D.1.14 Набор объектов кодирования
Этот набор объектов кодирования содержит определения кодирования для некоторых типов, указанных в
модуле АСН.1 из 0.1.15.
ExamplelEncodings «ENCODINGS ::={
marriedEncoding-1
| integerRightAlignedEncoding
| evenPositivelntegerEncoding
173