4.3.1 Кодирование знаков данных
Кодирование знаков, представленных в символе Interleaved 2 of 5, осуществляют в соответствии с таблицей 1. В графе "Двоичное представление" знак 1 обозначает широкий элемент, а знак 0 - узкий элемент.
Таблица 1 - Двоичное представление кодирования знаков
Знак данных | Двоичное представление | ||||
0 | 0 | 0 | 1 | 1 | 0 |
1 | 1 | 0 | 0 | 0 | 1 |
2 | 0 | 1 | 0 | 0 | 1 |
3 | 1 | 1 | 0 | 0 | 0 |
4 | 0 | 0 | 1 | 0 | 1 |
5 | 1 | 0 | 1 | 0 | 0 |
6 | 0 | 1 | 1 | 0 | 0 |
7 | 0 | 0 | 0 | 1 | 1 |
8 | 1 | 0 | 0 | 1 | 0 |
9 | 0 | 1 | 0 | 1 | 0 |
В таблице 1 для двоичного кодирования десятичных цифр использована модифицированная схема. Четырем расположенным слева битам каждого знака слева направо присваиваются позиционные веса 1, 2, 4 и 7. Пятый бит используют для паритета четности. Сумма позиционных весов битов со значением "1" эквивалентна значению знака данных, за исключением знака 0, у которого знак 1 используется для весов 4 и 7. Бит паритета используют для того, чтобы в знаке всегда присутствовали два бита со значением "1".
Нижеприведенный алгоритм определяет правила, по которым числовые данные должны быть преобразованы в знаки штрихового кода символа Interleaved 2 of 5.
Алгоритм | Пример |
1) рассчитывают контрольную цифру, если это предусмотрено нормативным документом по применению (4.6) | |
2) если строка данных, включая контрольную цифру, представлена нечетным числом цифр, впереди ставят цифру нуль | 367 |
0367 | |
3) числовую строку разбивают на пары цифр | 0367 |
03 и 67 | |
4) пары цифр кодируют следующим образом: | |
a) первую цифру каждой цифровой пары кодируют в виде комбинации штрихов в соответствии с таблицей 1 | 0 и 6 |
b) вторую цифру каждой цифровой пары кодируют в виде комбинации пробелов в соответствии с таблицей 1 | 3 и 7 |
5) каждую пару знаков символа образуют путем чередования комбинаций элементов - штрихов и пробелов, полученных в результате действий, указанных в перечислениях 4 а) и 4 б). При этом за каждым штрихом комбинации штрихов первого знака пары данных должен следовать соответствующий пробел комбинации пробелов второго знака данных. |
Последовательность элементов штрихов и пробелов, кодирующих пары знаков данных "03 67", приведена на рисунке 1.
Рисунок 1 - Пары знаков символа Interleaved 2 of 5, кодирующие "03 67"
4.3.2 Знаки START и STOP
Знак START состоит из четырех узких элементов в последовательности "штрих-пробел-штрих-пробел". Знак STOP представляет собой комбинацию: "широкий штрих-узкий пробел-узкий штрих".
Знак START начинает символ при его обычном расположении, расположен у левого края знаков символа, отображающих данные, и граничит с первым штрихом цифры старшего разряда. Знак STOP завершает символ при его обычном расположении, расположен у правого края знаков символа, отображающих данные, и примыкает к последнему пробелу цифры младшего разряда.
Знаки START и STOP не отображаются в визуальном представлении и не передаются декодером.
Знаки START и STOP, а также их связь со знаками символа, отображающими данные, приведены на рисунке 2.
Рисунок 2 - Знаки START и STOP
Полный символ штрихового кода для числа 1234 с указанием свободных зон представлен на рисунке 3.
Рисунок 3 - Символ Interleaved 2 of 5, включая свободные зоны