Для расчета контрольного разряда в EAN-8, EAN-13, а также в форматах EAN-14 (ITF-14), UPC-A и UPC-E, используется один и тот же алгоритм вычислений («по модулю 10»):
Пронумеровать все разряды справа налево (например, от 1 до 13 для EAN-13), начиная с позиции контрольного разряда.
Шаг 1: Начиная со 2-го, сложить значения всех ЧЕТНЫХ разрядов.
Шаг 2: Полученную сумму умножить на 3.
Шаг 3: Начиная с 3-го, сложить значения всех НЕЧЕТНЫХ разрядов.
Шаг 4: Сложить результаты, полученные во 2 и 3 шагах.
Шаг 5: Значение контрольного разряда является наименьшим числом, которое в сумме с величиной, полученной в шаге 4, дает число, кратное 10.
Все недоразумения при расчетах возникают, как правило, по причине того, что многие неосознанно неправильно нумеруют разряды слева направо. При нумерации СПРАВА НАЛЕВО нет разницы в порядке расчета контрольного разряда С для 8, 12, 13 или 14-разрядного кода.
Рассмотрим пример расчета контрольного разряда С для кода 560172111001С (формат EAN-13).
Шаг 1. Сложить цифры, стоящие на четных местах: 6+1+2+1+0+1=11,
Шаг 2. Полученную сумму умножить на 3: 11*3=33,
Шаг 3. Сложить цифры, стоящие на нечетных местах, без контрольной цифры: 5+0+7+1+1+0=14,
Шаг 4. Сложить числа, полученные при выполнении 2 и 3 шагов: 33+14=47,
Шаг 5. В числе 47 отбросить десятки - получим 7, 10-7=3.
Итак, после расчета контрольного разряда получим код 5601721110013.
Теперь рассмотрим, как формировать графическое изображение штрих-кода в формате EAN-13 с помощью выбранного шрифта. В штрих-коде выделяют следующие составляющие (см. рис.3.5):
First Flag - графическое изображение первого левого символа,
Second Flag - графическое изображение второго левого символа,
Left Hand - графическое изображение пяти следующих левых символов (левая часть графического изображения штрих-кода),
CENTER - графическое изображение символа, разделяющего левую и правую часть графического изображения штрих-кода (центральный символ),
Right Hand - графическое изображение пяти правых символов (правая часть графического изображения штрих-кода),
Check character - графическое изображение самого правого символа (контрольного символа).
Для формирования графического изображения штрих-кода используется таблица 3.2. Названия колонок таблицы соответствуют перечисленным составляющим штрих-кода. В каждой затемненной клетке таблицы с номером (i,j) содержится символ и в скобках его ASCII код. Если данный символ напечатать в выбранном штрих-кодовом шрифте, то его изображение будет соответствовать графическому изображению цифры i. Номер столбца таблицы - j выбирается в зависимости от того, в какую графическую составляющую входит цифра i.
Таблица 3.2 | ||||||||||||
Данные для формирования графического изображения штрих кода | ||||||||||||
Символ штрих-кода | First Flag | Second Flag | Left Hand A | Left Hand B | Right Hand | Check character | Data Characters | |||||
1 | 2 | 3 | 4 | 5 | ||||||||
Символ (код ASCII), определяющий графическое изображение символа штрих-кода | ||||||||||||
!(33) | ` (96) | 0 (48) | @(64) | P(80) | p(112) | A | A | A | A | A | ||
«(34) | a(97) | 1(49) | A(65) | Q(81) | q(113) | A | B | A | B | B | ||
#(35) | b(98) | 2(50) | B(66) | R(82) | r(114) | A | B | B | A | B | ||
$(36) | c(99) | 3(51) | C(67) | S(83) | s(115) | A | B | B | B | A | ||
%(37) | d(100) | 4(52) | D(68) | T(84) | t(116) | B | A | A | B | B | ||
& (38) | e(101) | 5(53) | E(69) | U(85) | u(117) | B | B | A | A | B | ||
' (39) | f(102) | 6(54) | F(70) | V(86) | v(118) | B | B | B | A | A | ||
( (40) | g(103) | 7(55) | G(71) | W(87) | w(119) | B | A | B | A | B | ||
) (41) | h(104) | 8 (56) | H(72) | X(88) | x(120) | B | A | B | B | A | ||
*(42) | i(105) | 9(57) | I(73) | Y(89) | y(121) | B | B | A | B | A | ||
|(124) – CENTER |
Отметим, что в таблице содержится две колонки Left Hand: Left Hand A и Left Hand B. Кроме этого, в таблице присутствует группа колонок Data Characters. В этой группе колонок содержится пятисимвольная маска, определяющая правила формирования левой части графического изображения штрих-кода. Графическое изображение текущего левого символа штрих-кода выбирается из колонки Left Hand A или Left Hand B в зависимости от того, чему равен (A или B) соответствующий символ маски. Маска определяется, исходя из первого символа (First Flag) штрих-кода. Если первый символ i, то маска находится в i-ой строке таблицы 3.2.
Рассмотрим подробнее правила формирования графического изображения штрих-кода. Пусть требуется получить графическое изображение штрих-кода 2001234567893.
Первый символ рассматриваемого штрих-кода равен 2. Графическое изображение 2 кодирует символ # (код ASCII 35). Маска в этом случае равна АВВАВ.
Второй символ равен 0. Графическое изображение 0 кодирует символ ` (код ASCII 96).
Далее в рассматриваемом штрих-коде идут пять символов левой части 01234. Выбор символов, кодирующих их графическое изображение, осуществляется, исходя из символов маски М.
Так первый символ маски М равен А. Следовательно, графическое изображение первого символа левой части, т.е. графическое изображение 0, кодирует символ 0 (код ASCII 48), взятый из соответствующей строки колонки Left Hand A.
Второй символ маски М равен В. Следовательно, графическое изображение 1 (второго символа левой части) кодирует символ A (код ASCII 65), взятый из соответствующей строки колонки Left Hand B.
Аналогично получим, что графическое изображение 2 кодирует символ B(66), 3 – 3(51), 4 – D(68).
Итак, мы получили последовательность символов #`0AB3D, кодирующую First Flag, Second Flag и Left Hand части графического изображения рассматриваемого штрих-кода.
Далее включаем в эту последовательность символ, кодирующий графическое изображение разделителя CENTER. Это всегда символ | (код ASCII 124).
После этого переходим к кодированию правой части (Right Hand) графического изображения штрих-кода. Кодирование правой части в отличие от кодирования левой части не зависит от маски.
В рассматриваемом штрих-коде правая часть состоит из символов 56789. Графическое изображение 5 кодирует символ U(85), взятый из соответствующей строки колонки Right Hand.
Аналогично получим, что графическое изображение 6 кодирует символ V(86), 7 – W(87), 8 – X(88), 9 – Y(89).
В завершение кодируем контрольный символ (Check character). В рассматриваемом штрих-коде этот символ равен 3. Графическое изображение 3 кодирует символ s(115), взятый из соответствующей строки колонки Check character.
Итак, графическое изображение штрих-кода 2001234567893 кодирует последовательность симолов #`0AB3D|UVWXYs. Само графическое изображение этого штрих-кода представлено на рис.3.6.
Алгоритм формирования графического изображения штрих-кода представлен блок-схемой на рис.3.7.
Вопросы для повторения
1. Особенности экономической информации.
2. Понятие классификатора.
3. Иерархическая система классификации.
4. Достоинства и недостатки иерархической системы классификации.
5. Фасетная система классификации.
6. Достоинства и недостатки фасетной системы классификации.
7. Функции ЕСКК.
8. Состав ЕСКК.
9. Назначение штрихового кодирования.
10. Формат штрих-кодов EAN-13.
11. Алгоритм расчета контрольного разряда штрих-кодов EAN.
12. Принцип формирования графического изображения штрих-кодов.
Резюме по теме
Отмечены особенности экономической информации. Введено понятие классификатора. Рассмотрены иерархическая и фасетная системы классификации, отмечены преимущества и недостатки таких систем. Рассмотрены функции и состав ЕСКК. Рассмотрены вопросы кодирования с помощью штрих-кодов формата EAN.
Модели данных
Цели и задачи изучения темы
Целью данной темы является освоение понятий, использующихся при разработке моделей данных, и изучение вопросов построения реляционных моделей. Рассматриваются основы технологии IDEF1X(Integration DEFinition for Information Modeling)
Дата: 2016-09-30, просмотров: 332.