JAN規格のバーコードは, お菓子のパッケージや, いろいろな商品のパッケージ に印刷されているので, 日常の生活の中で目にする機会も多いと思うが, このバーコードは, 白黒の縦縞模様と縞模様の下に付いている13桁(あるいは9桁)の数字から成る. 数字は商品のデータを表す12桁(全9桁の場合は8桁)に誤読検出用の1桁を加えて作られたもので, 縞模様はその数字をある決まった方法で黒線と空白の列に変換して機械に読み取れるようにしたものである. したがって, 当然のことながら, バーコードの表すデータの本体は13桁の数字の方なのだが, 数字を認識する機械を造るよりは, 白黒の縞々のパターンを読み取る機械を造る方がうんと簡単なので, このような縞模様に数字を変換して機械に読み取らせているわけである.
ここで, 実際にネピアのティッシュボックスについているバーコードを見てみることにしよう。
13桁の数字の各桁の意味は次のようになっている.
49 | 01121 | 11620 | 4 |
国 | メーカー | 商品 | 誤り検出用 |
さて, 誤りチェック用の13桁目は, 12桁目までの数字からあるアルゴリズムによって決まるのだが, 13桁の数字を左から順に,
と文字で表すことにすると, 13桁目の数字x13の計算法は次の式で与えられる.
上のネピアの例で確かめてみると,
ここで, 読み取り機が誤って1桁読み間違えたとしよう. 例えば上のネピアの4桁目を誤って0と読んでしまったとすると,