Статус документа
Статус документа

ГОСТ Р ИСО/МЭК 8825-1-2003 Информационная технология (ИТ). Правила кодирования АСН.1. Часть 1. Спецификация базовых (BER), канонических (CER) и отличительных (DER) правил кодирования

     8 Базовые правила кодирования

     

     8.1 Общие правила кодирования

8.1.1 Структура кодирования

8.1.1.1 Кодирование значения данных должно состоять из четырех компонентов, которые должны появляться в следующем порядке:

а) октеты идентификатора (см. 8.1.2);

б) октеты длины (см. 8.1.3);

в) октеты содержимого (см. 8.1.4);

г) октеты конца содержимого (см. 8.1.5).

8.1.1.2 Октеты конца содержимого должны присутствовать только в том случае, если их наличие требуется значением октетов длины (см. 8.1.3).

8.1.1.3 На рисунке 1 показана структура кодирования (простого или составного). На рисунке 2 показан один из вариантов составного кодирования.

Рисунок 1 - Структура кодирования


Рисунок 2 - Вариант составного кодирования



8.1.1.4 Структура кодирования не изменяется ни для нотации подтипа АСН.1, ни для нотации расширения типа АСН.1.

8.1.2 Октеты идентификатора

8.1.2.1 Октеты идентификатора должны кодировать тег АСН.1 (класс и номер) типа значения данных.

8.1.2.2 Для тегов с номером от 0 до 30 (включительно) октеты идентификатора должны содержать единственный октет, закодированный следующим образом:

а) биты 8 и 7 представляют класс тега и должны кодироваться так, как определено в таблице 1;

б) бит 6 должен быть нулем или единицей согласно правилам 8.1.2.5;

в) биты с 5 по 1 должны кодировать номер тега как двоичное целое число с битом 5 в качестве старшего значащего бита.


Таблица 1 - Кодирование класса тега

Класс

Бит 8

Бит 7

Универсальный

0

0

Прикладной

0

1

Контекстно зависимый

1

0

Пользовательский

1

1



8.1.2.3 На рисунке 3 показан вид октета идентификатора для типа с номером тега от 0 до 30 (включительно).