ГОСТ Р 51294.9—2002
ПРИЛОЖЕНИЕР
(справочное)
Алгоритм минимизации числа зеодовых слов
Одни и тс же данные могут быть представлены в виде различных последовательностей кодовых слов
PDF417 использованием разных режимов уплотнения и процедур перехода. Нс существует предписанной про
цедуры для минимизации числа требуемых кодовых слов, но для этих целей можно использовать следующий
алгоритм:
1) принимают, что Р указывает начало потока данных;
2) устанавливают текущий режим кодирования в режим текстового уплотнения:
3) принимают, что N — число последовательных разрядов, начинающихся or Р:
4) если N>13, тогда:
5) фиксируют режим цифрового уплотнения:
6) кодируют N знаков с использованием цифрового уплотнения:
7) передвигают вперед указатель Р на N;
8) переходят к шагу 3;
9) в противном случае, если N < 13. тогда:
10) принимают Т длиной последовательности знаков в режиме текстового уплотнения, начинающейся с Р.
Последовательность заканчивается в том случае, если будут обнаружены либо знак, нс находящийся в режиме
текстовою уплотнения, либо цифровая последовательность длиной 13 и более разрядов:
11) если Т > 5 , тогда:
12) фиксируют режим текстового уплотнения;
13) кодируют Т знаков с использованием режима текстового уплотнения;
14) перемещают вперед указатель Р на Т;
15) переходят к шагу 3
16) в случае, если Т < 5. тогда:
17) принимают В в качестве длины кодируемой в двоичном виде последовательности, начинающейся с Р.
Последовательность заканчивают в случаях, если будут найдены либо последовательность в режиме текстового
уплотнения, длиной 5 и более, либо цифровая последовательность, длиной 13 и более
18) если В = 1и текущий режим текстового уплотнения, тогда:
19) переводят регистр в режим байтового уплотнения:
20) кодиру ют значение одного байта с использованием режима байтового уплотнения;
21) перемещают вперед указатель Р на В;
22) переходят к шагу 3
23) иначе:
24) фиксируют режим байтового уплотнения;
25) кодиру ют В байтов с использованием режима байтового уплотнения;
26) перемещают вперед указатель Р на В:
27) переходят к шагу 3.
76