2013-09-23 7 views
0

Я нашел 2 документа в этом штрих-коде. Ни один из них не описывает, как вычислить контрольную сумму.Код 16K штрих-код - расчет контрольной суммы

Они оба просто дают формулу и не говорят, какие символы включать в вычисление.

Кроме того, эти документы не представляют целые значения для кнопок «Старт/Стоп/Пэд» или «Отдых». Поэтому, если они включены в вычисление, я даже не знаю их значений.

Кто-нибудь знает, как вычислить контрольную сумму?

ответ

1

Я нашел эту информацию там: http://www.gomaro.ch/ftproot/Code%2016k.pdf и там (более полных): http://www.expresscorp.com/content/express/pdf/IndustrySpecifications/USS-16K.pdf

Так этот код имеют 2 контрольные суммы, которые вычисляются путем взвешивания суммы значений каждого символа в том числе стартового символа.

  • Первый символ проверка начинается взвешивание на 2.

  • Второй начинает взвешивание на 1.

  • Далее, возьмите по модулю 107 суммы.

Так что, если вы имели характер значения 22, 10, 15, 20, две контрольные суммы будут:

(2*22 + 3*10 + 4*15 + 5*20) % 107 
(1*22 + 2*10 + 3*15 + 4*20) % 107 

Если у вас есть больше символов, просто продолжайте идти ... общая формула будет быть для русских символов:

C1 = modulo 107(sum((i+1)*Char(i)) 
summed from i=1 to number of symbol character -2 

C2 = modulo 107(sum(i*Char(i)) 
summed from i=1 to number of symbol character -1 (so this includes C1) 

Вот изображение структуры 16k кода: Here is an image of the structure of a 16k code :

+0

Проблема doc не имеет реального примера, какие символы включать, что исключить. – Alexander

+0

хорошо, я думаю, вам нужно включить все из них ... », которые рассчитываются путем взвешивания суммы значений каждого символа , включая стартовый символ« – Marc

+1

http://www.expresscorp.com/content/express/pdf /IndustrySpecifications/USS-16K.pdf Этот документ выглядит более полным. Вы также можете взглянуть на него ... Вы можете перейти непосредственно к части 'check characters' – Marc

Смежные вопросы