バーコードについて             

 「二進法ってなーに」で電車の自動改札用切符の日付・発駅・運賃は、「1」を{縦棒}、「0」を{空白}としてバーコードが使われている話をしました。バーコードについてもう少し調べてみましょう。

(1)自動改札用切符の日付・運賃

 日付・運賃の数字をバコードで表す方法についてはすでに知りました。数字には「けた」数があることに着目してみましょう。二進法は0と1だからけた数がすぐに増えてしまいます。だから、けたの数字を一つ一つバコードに表すことが必要になるのです。例えば、823日を8={1000}23={10111}だが、「23」は「2」と「3」、つまり{10}と{11}で表すのです。数字は0から9までだから二進法の四けたですべての数を表すことができます。0={0000}、1={0001}、2={0010}、・ ・ ・9={1001}です。ここで月は12月まで、12={1100}で4けただから、切符の月は1から12までの二進法を使い、日付の十の位と一の位はそれぞれ二進法で表すのです。順に最初の四けたを月とし、次の四けたを日付の十の位、次が一の位としているのです。

(2)商品のバーコードについて

 商品のバコードの仕組みはどうなっているかを調べてみましょう。切符と原理は同じなのだがいままでの二進法とは異なっています。JAN(=Japanese Article Number)のコード表で決められているのです。それは、独自に0,1,2,・・・9の十個の数字に七けたのバーコードを対応させています。バーコードをスキャナーで読み取るときにどちらが右か左かあるいは前か後か、どちらでもスキャナーで読み取れるように工夫されています。さて、どん工夫でしょうか?また、四けたでなく、七けたなのでしょうか?それを以下順に追って調べてみよう。

 まず、二けたの場合、(下図のように四角のマス2個で表す。)十個の数字を表すのは明らかに無理ですが、

               

 

白と黒に塗り分けると右のように2通りのバーコードが作れます。でも逆に見れば(左と右の反転)同じです。このような場合は等しいとします。白と黒の比が1:1ということです。

 次に三けたの場合(下図のように四角のマス3個で表す。)十個の数字を表すのは明らかに無理ですが、  

                

 

これも白と黒に塗り分けると右のように2通りのバーコードが作れます。白:黒=2:1と1:2で逆にみると同じ、つまり等しい。

{白、黒}では十個の数字を塗り分けれません。同様にして{白、黒、白}でも明らかに無理です。

では、四けたを{白、黒、白,黒}でバーコードを作ってみよう。

                                    

この場合は、1通りしかありませんね。1:1:1:1ということです。

次は、五けたを{白、黒、白,黒}でバーコードを作ってみよう。

               

 これは、白:黒:白:黒=1:1:1:2 と 白:黒:白:黒=1:1:2:1 もっとたくさんあるように思うかもしれませんが、二通りしかありません。
 1:1:1:2  1:1:2:1  1:2:1:1  2:1:1:1 の四通り(1:1:1:2型という。)ですが、逆にみると等しいものがあるからです。

 さて、六けたを{白、黒、白,黒}でバーコードを作ってください。
結果は1:1:1:3の型は
4通り、1:1:2:2の型は6通り、計10通りで、反転して同じものは除きますので、6通りになります。

   1:1:1:3=3:1:1:1  1:1:2:2=2:2:1:1

   1:1:3:1=1:3:1:1  1:2:1:2=2:1:2:1

これでも10個の数字をあらわすことはできませんね。

 いよいよですよ。七けたを{白、黒、白,黒}でバーコードを作ってください。

   を塗り分けると20通りになりますよ。塗って調べてください。

しかし、反転すると等しいものを除きますので、10通りなります。これで目標達成です。
 この10通りを{0,1,2,3,4,5,6,7,8,9}の数字と対応させればいいのです。
JANのコード対応表では次のようになっています。

0001101

0100111

 

3:2:1:1

1:1:2:3

0011001

0110011

 

2:2:2:1

1:2:2:2

0010011

0011011

 

2:1:2:2

2:2:1:2

0111101

0100001

 

1:4:1:1

1:1:4:1

0100011

0011101  

1:1:3:2

2:3:1:1

0110001

0111001

 

1:2:3:1

1:3:2:1

0101111

0000101

 

1:1:1:4

4:1:1:1

0111011

0010001

 

1:3:1:2

2:1:3:1

0110111

0001001

 

1:2:1:3

3:1:2:1

0001011

0010111

 

3:1:1:2

2:1:1:3

このように、バーコードは、一つの数を七けた(7個の長方形)で表しています。一つの長方形を1モジュールといい7モジュールで1キャラクターという。白黒を交互に塗り分けてその幅の比が逆から見て等しいものは同じ数を表しているのです。つまり、反転しても数字を読み取れるようになっているのです。スキャナーは白と黒の光の反射(強弱)を感知して電気信号にかえているのです。

 

数楽どん話メニューにもどる

トップにもどる