ーーーーーーーーーーーーーーーーーーーーーーーーー
チェックデジットとは !?
(下段にいろいろなチェックデジットの計算式が書いてあります)
ーーーーーーーーーーーーーーーーーーーーーーーーー
|
・結論から先に申し上げますとリードミスを防ぐ為の一つのよい方法が チェックデジット(C/D)をつけるという事なのです。
ある種の計算方法を考えます。
1をかけ、3桁目には2をかけ・・・・・7桁 MOD(モジュラス)を計算し、それを10から引いた数字(補数方式)をC/Dとして 8桁目とする。 また、C/Dが10のときは0とする。 というような計算方法です。 *これは下段の2.の計算式です。
--------------------------------------------------------------------
演算子MOD(モジュラス)とは剰余のことです。
--------------------------------------------------------------------
上記を数式で記しますと、 (例)本体の数字→ 0 1 3 7 6 1 4 とします。 X X X X X X X ウエイト= 2 1 2 1 2 1 2 ───────────────────── 26 MOD 10 = 6 C/D = 10−6=4 ・ 従ってC/Dを付けた数字→ 0137614 4 となります。 --------
---------------------------------------------------------------------
ここで記しました計算方法は単なる計算方法であり、どんな計算方法でもかまいません。 では、なぜこのようにするのかと言いますと、 一組の数字自体に法則を持たせる事により、リードしてその数字をチェックしその法則 (計算)に合致すればリードミスではないであろうということなのです。 従ってプリントする時とリードするときの計算方法は同じでなければなりません。 このようにしてリードミスを防ぐ為の一つの方法がC/Dをつけるという事なのです。 ご理解いただけましたでしょうか?
------------------------------------------------------------------------- ・チェックデジットの計算式はいろいろあります。 そのシステムで独自の計算式を作ってもかまいません。 以下に通常多く用いられているチェックデジットの計算式を記します。
1. モジュラス10、非分割、補数、ウエイト=...← 1313(後ろから前の桁へ)。 C/D=10 の時は C/D=0 。 → この方式はJANコードの計算式です。
2. モジュラス10、 分割、補数、ウエイト=...← 1212(後ろから前の桁へ)。 C/D=10 の時は C/D=0 。 → この方式は上記の計算式です。
3. 7DR方式(7チェックDR) 数字全体を1つの数字とみなして MOD 7 を計算し それをC/Dとする方式。 例 0123456 MOD 7 = 4 → C/D=4 。
4. 7DSR方式(7チェックDSR) 数字全体を1つの数字とみなして MOD 7 を計算し それを7から引いた値をC/Dとする方式。 例 0123456 MOD 7 = 4 → 7−4=3。 C/D=3。 C/D=7 の時は C/D=0 。 5. 9DR方式 → 3.の式で 7を9 に変えた式です。
6. 9DSR方式 → 4.の式で 7を9 に変えた式です。
7. モジュラス11、非分割、補数、 ウエイト=...← 765432(後ろから前の桁へこの6桁を繰り返す)。 C/D=11 の時は C/D=0。 C/D=10 の時は C/D=0 にする場合と X 等他にする場合とがあります。
8. CODE39の43方式 これはCODE39が43ケのキャラクターを持っているのでそのコードナンバを数値 としてチェックデジットを計算する方法です。 この計算式のソフトを当社にて販売しておりますので当社HPの他をご覧ください。
9.その他 計算式は他にもいろいろありきりがありません。 チェックデジットの目的は頭書のとおりですのでご理解いただけたことと思います。
以上です。
|
|