БИБЛИОТЕКА НОРМАТИВНЫХ ДОКУМЕНТОВ

ГОСТ ISO/IEC 15438-2018. Межгосударственный стандарт. Информационные технологии. Технологии автоматической идентификации и сбора данных. Спецификация символики штрихового кода PDF417

Приложение C

(обязательное)

 

АЛГОРИТМ КОДИРОВАНИЯ В РЕЖИМЕ БАЙТОВОГО УПЛОТНЕНИЯ

 

Это преобразование следует использовать в режиме байтового уплотнения. С его помощью могут быть преобразованы шесть байтов данных в пять кодовых слов данных PDF417 по уравнению

 

b5·2565 + b4·2564 + b3·2563 + b2·2562 + b1·2561 + b0·2560 =

= d4·9004 + d3·9003 + d2·9002 + d1·9001 + d0·9000,

 

где b - значение байта данных (от 0 до 255);

d - кодовое слово данных.

Для преобразования базы 256 в базу 900 может быть использован следующий алгоритм:

a) принимают t в качестве временной переменной;

b) вычисляют t = b5·2565 + b4·2564 + b3·2563 + b2·2562 + b1·2561 + b0·2560;

c) каждое кодовое слово вычисляют следующим образом:

для каждого кодового слова данных di = d0 .... d4

 

НАЧАЛО

di = t mod 900

t = t div 900

КОНЕЦ

 

Пример - Требуется закодировать знаки данных в режиме байтового уплотнения b5 .... b0 {231, 101, 11, 97, 205, 2}.

Вычисляют сумму t с использованием десятичных значений шести знаков в режиме байтового уплотнения:

t = 231·2565 + 101·2564 + 11·2563 + 97·2562 + 205·2561 + 2·2560 = 254 421 168 672 002

Вычисляют кодовое слово 0

d0 = 254 421 168 672 002 mod 900 = 302

t = 254 421 168 672 002 div 900 = 282 690 187 413

Вычисляют кодовое слово 1

d1 = 282 690 187 413 mod 900 = 213

t = 282 690 187 413 div 900 = 314 100 208

Вычисляют кодовое слово 2

d2 = 314 100 208 mod 900 = 208

t = 314 100 208 div 900 = 349 000

Вычисляют кодовое слово 3

d3 = 349 000 mod 900 = 700

t = 349 000 div 900 = 387

Вычисляют кодовое слово 4

d4 = 387 mod 900 = 387

t = 387 div 900 = 0

Последовательность кодовых слов d4 ... d0 представляет собой 387, 700, 208, 213, 302.