ГО С Т ISO/IEC 24824-1— 2013
С.12.4 При наличии опционального компонента namespace-паше к потоку битов добавляют бит
’1’ (наличие), в противном случае добавляют бит 0’ (отсутствие).
С .12.5 При наличии опционального компонента prefix его кодируют, как описано в С.13.
С.12.6 При наличии опционального компонента namespace-nam e его кодируют, как описано в
С.13.
С.13 Кодирование типа Id e n tify in g S trin g O rIn d e x
С .13.1 Тип Id e n tify in g S trin g O rln d e x определен в 7.13 следующим образом:
Id e n tify in g S trin g O rln d e x ::■ CHOICE {
lit e r a l-c h a r a c t e r -s t r in g N o n E m p tyO cte tS trin g ,
s tr in g -in d e x INTEGER ( 1 . .one-m eg) }
C.13.2 Значение типа Id e n tify in g S trin g O rln d e x кодируют, выполняя следующие действия
(в указанном порядке).
П рим ечание — Кодирование данного типа всегда начинают с первого бита октета и заканчивают на
восьмом бите другого или того же октета.
С.13.3 При наличии альтернативы lit e r a l-c h a r a c t e r -s t r in g к потоку битов добавляют бит ’0’
(дискриминант) и lit e r a l-c h a r a c t e r -s t r in g кодируют, как описано в С.22.
С.13.4 При наличии альтернативы s tr in g -in d e x к потоку битов добавляют бит Т (дискрими
нант) и s tr in g -in d e x кодируют, как описано в С.25.
С.14 Кодирование типа N o n ld e n tify in g S trin g O rln d e x , начиная с первого бита октета
С .14.1 Тип N o n ld e n tify in g S trin g O rln d e x определен в 7.14 следующим образом:
N o n ld e n tify in g S trin g O rln d e x :: = CHOICE {
lit e r a l-c h a r a c t e r -s t r in g SEQUENCE {
a d d -to -ta b le BOOLEAN,
c h a ra c te r-s trin g E n co d e d C h a ra cte rS trin g ) (
s tr in g -in d e x INTEGER ( 0 . .one-m eg) )
C.14.2Bдaннoмnyнктв(C.14)oпиcaнoкoдиpoвaниeзнaчeниятипaNonIdentify in g S trin g O rln d e x ,
когда кодирование должно начаться с первого бита октета (см. также С .15). Значение кодируют, выпол
няя следующие действия (в указанном порядке).
П рим ечание — Кодирование данного типа всегда заканчивают на восьмом бите другого или того же
октета.
С.14.3 При наличии альтернативы lit e r a l-c h a r a c t e r -s t r in g к потоку битов добавляют бит ’0’
(дискриминант) и lit e r a l-c h a r a c t e r -s t r in g кодируют, как описано в двух следующих подпунктах.
С.14.3.1 Если значение компонента a d d -to -ta b le равно TR U E, то к потоку битов добавляют бит
’1’, в противном случает добавляют бит ’0’.
С.14.3.2 Значение компонента c h a r a c te r -s tr in g кодируют, как описано в С.19.
С .14.4 При наличии альтернативы s tr in g -in d e x к потоку битов добавляют бит ’1’ (дискрими
нант) и s tr in g -in d e x кодируют, как описано в С.26.
С.15 Кодирование типа N o n ld e n tify in g S trin g O rln d e x , начиная с третьего бита октета
С .15.1 Тип N o n ld e n tify in g S trin g O rln d e x определен в 7.14 следующим образом:
N o n ld e n tify in g S trin g O rln d e x :: * CHOICE {
lit e r a l-c h a r a c t e r -s t r in g SEQUENCE {
a d d -to -ta b le BOOLEAN,
c h a ra c te r-s trin g E n co d e d C h a ra cte rS trin g } ,
s tr in g -in d e x INTEGER ( 0 . .one-m eg) }
70