チェック数字の計算方法

このドキュメントはあくまで完全性を期すためのものである。
Modulo 47
モジュロに従ったチェックサムの計算 47:モジュロ47によるチェック文字は、例えばコード93で使用される。
コード93は、いわゆるCチェックサムとKチェックサムの2つのチェックサムを使用します。 どちらも同じ原理で計算される。 しかし、KチェックサムにはCチェックサムも含まれている。
計算中、まずコードのすべての文字に参照番号が割り当てられる。 コードの各桁には重み付けがされており、後ろから段階的に増えていった。 従って、最後尾はウェイト1、最後尾はウェイト2......となる。 それぞれの場合、参照番号にウェイトが掛けられる。 その結果、個々の結果が合計される。
この合計を47で割る。 この除算の残りがチェックサムに相当し、これは参照番号を使って文字としてコード化される。
Kチェックサムも同様に決定される。 しかし今回は、最初のチェックサムと同様に、コードの文字列とCチェックサムが基礎として使われる。 最初に決定されたチェックサムは、2番目のチェックサムの計算に含まれる。
計算例:

参照番号 Code 93:
00 0 01 1 02 2 03 3 04 4 05 5 06 6 07 7 08 8 09 9 10 A 11 B |
12 C 13 D 14 E 15 F 16 G 17 H 18 I 19 J 20 K 21 L 22 M 23 N |
24 O 25 P 26 Q 27 R 28 S 29 T 30 U 31 V 32 W 33 X 34 Y 35 Z |
36 - 37 . 38 Space 39 $ 40 / 41 + 42 % 43 ($) 44 (%) 45 (/) 46 (+) - * Start/Stop |