ГО С Т ISO/IEC 24824-1— 2013
С.21.2 Если значение находится в диапазоне от 1 до 128. то к потоку битов добавляют бит ’0’. зна
чение минус нижняя граница диапазона кодируют как целое значение без знака в поле из семи битов и
добавляют к потоку битов.
С.21.3 Если значение находится в диапазоне от 129 до 220. то к потоку битов добавляют бит ’Г и
три бита ’000’ (забивка), значение минус нижняя граница диапазона кодируют как целое значение без
знака в поле из двадцати битов и добавляют к потоку битов.
С.22 Кодирование типа
NonEmptyOctetString,
начиная со второго бита октета
С.22.1 Тип N o n E m p tyO cte tS trin g определен в 7.2 следующим образом:
N onE m p tyO cte tS trin gOCTET STRING (S IZ E ( 1 . . f o u r -g ig ))
C.22.2 В данном пункте (С.22) описано кодирование значения типа N o nE m ptyO ctetS tring. когда
кодирование должно начаться со второго бита октета (см. также С.23 и С.24). Значение кодируют, вы
полняя следующие действия (в указанном порядке).
П рим ечание — Кодирование данного типа всегда заканчивают на восьмом бите другого октета.
С.22.3 Длину строки октетов кодируют, как описано в трех следующих подпунктах.
С.22.3.1 Если длина находится в диапазоне от 1 до 64. то к потоку битов добавляют бит ’0’. длину
минус нижняя граница диапазона кодируют как целое значение без знака в поле из шести битое и до
бавляют к потоку битов.
С.22.3.2 Если длина находится в диапазоне от 65 до 320, то к потоку битов добавляют два бита ’10’
и пять битов ’00000’ (забивка), длину минус нижняя граница диапазона кодируют как целое значение
без знака в поле из восьми битов и добавляют к потоку битов.
С.22.3.3 Если длина находится в диапазоне от 321 до 232. то к потоку битов добавляют два бита
’11’ и пять битов 00000’ (забивка), длину минус нижняя граница диапазона кодируют как целое значение
без знака в поле из тридцати двух битов и добавляют к потоку битов.
С.22.4 Биты, образующие октеты строки октетов, добавляют к потоку битов (по порядку).
С.23 Кодирование типа N o nE m ptyO ctetS tring, начиная с пятого бита октета
С.23.1 Тип N onE m p tyO cte tS trin g определен в 7.2 следующим образом:
N onE m p tyO cte tS trin g ::«* OCTET STRING (S IZ E (1 .. f o u r -g ig ) )
C.23.2 В данном пункте (С.23) описано кодирование значения типа N o nE m ptyO ctetS tring. когда
кодирование должно начаться с пятого бита октета (см. также С.22 и С.24). Значение кодируют, выпол няя
следующие действия (в указанном порядке).
П рим ечание — Кодирование данного типа всегда заканчивают на восьмом бите другого октета.
С.23.3 Длину строки октетов кодируют, как описано в трех следующих подпунктах.
С.23.3.1 Если длина находится в диапазоне от 1 до 8. то к потоку битов добавляют бит ’0\ длину
минус нижняя граница диапазона кодируют как целое значение без знака в поле из трех битов и до
бавляют к потоку битов.
С.23.3.2 Если длина находится в диапазоне от 9 до 265, то к потоку битов добавляют два бита
’10’ и два бита 00’ (забивка), длину минус нижняя граница диапазона кодируют как целое значение без
знака в поле из восьми битов и добавляют к потоку битов.
С.23.3.3 Если длина находится в диапазоне от 265 до 232, то к потоку битов добавляют два бита
’11’ и два бита 00’ (забивка), длину минус нижняя граница диапазона кодируют как целое значение без
знака в поле из тридцати двух битов и добавляют к потоку битов.
С.23.4 Биты, образующие октеты строки октетов, добавляют к потоку битов (по порядку).
74
С.24 Кодирование типа N o nE m ptyO ctetS tring, начиная с седьмого бита октета
С.24.1 Тип N onE m p tyO cte tS trin g определен в 7.2 следующим образом:
N onE m p tyO cte tS trin g :OCTET STRING (S IZ E ( 1 . . f o u r -g ig ))