ГОСТ Р ИСО/МЭК 8825-3—2016
D. 1.7.5 Многие примеры в этом приложении показывают, что здесь имеется широкая опора на безусловные
значения (по умолчанию), предусмотренные в разделе 23. и получаются преимущества от способности определять
объекты кодирования инлайновым методом, а не отдельно присваивать их справочным именам, которые затем
используются в других присвоениях.
D.1.8 Объект кодирования для типа «цепочка октетов»
D.1.8.1 Присвоение АСН.1 равно:
BinaryFile ::= OCTET STRING
D.1.8.2 Присвоением объекта кодирования (см. 23.9.1) является:
binaryFileEncoding #BinaryFile ::= {
ALIGNED ТО NEXT octet
PADDING one
REPETITION-ENCODING {
REPETITION-SPACE
SIZE variable-with-determinant
DETERMINED BY container
USING OUTER}}
D.1.8.3 Значение выровнено no октетам с использованием заполнения единицами и заканчивается в конце
PDU.
D.1.9 Объект кодирования для типа «цепочка знаков»
D.1.9.1 Присвоение АСН.1 равно:
Password ::= PrintableString
D. 1.9.2 Присвоением объекта кодирования (см. 23.4.1 и 23.14.1) является:
passwordEncoding «Password ::= {
ALIGNED ТО NEXT octet
TRANSFORMS {{CHAR-TO-BITS
AS compact
SIZE fixed-to-max
MULTIPLE OF b it}}
REPETITION-ENCODING {
REPETITION-SPACE
SIZE variable-with-determinant
DETERMINED BY container
USING OUTER}}
D.1.9.3 Цепочка выровнена по октетам с использованием заполнения нулями и заканчивается в конце PDU;
кодированием знаков указано «compact», поэтому каждый знак кодируется в 7 битах, используя ’ООООООО’Вдля
первого знака ASCII типа PrintableString. ’0000001’В для следующего и т. д.
D.1.10 Отображение значений знаков в значения битов
D.1.10.1 Присвоение АСН.1 равно:
CharacterStringToBit ::= IA5String ("FIRST" | "SECOND" | "THIRD")
D.1.10.2 Присвоением объекта кодирования (см. 19.2) является:
characterStringToBitEncoding «CharacterStringToBit ::= {
USE #lntFromOTo2
MAPPING VALUES {
"FIRST" TO 0.
"SECOND" TO 1.
"THIRD" TO 2}
WITH integerEncoding}
#lntFromOTo2 ::= #INT (0..2),
где «integerEncoding» определен в D.1.5.5.
171