今、お店で商品を購入すると、必ず裏面の方に白黒の縞模様のバーコードがついている。
今日の流通社会において、バーコードの果たす役割は大きい。商品代金決済の迅速化(省
力化・打ちミスの減少)はもちろんのこと、商品の在庫状況を的確に判断することも可能に
し、経営効率の向上につながっている。
バーコードを印刷するには、ある程度の面積を要し、あまり小さい商品にはバーコードは
のらない。あの懐かしい10円チョコは、かなりの人気商品であったが、バーコードがのらず、
流通経路から外れたため、売上げが激減したという。
バーコードは、キーボードに代わってコンピュータに数字などを入力する手段である。バー
コードをなぞる(スキャンする)だけで、簡単に数字などが入力できるが、そこには、さまざま
な数学的工夫がなされている。
現在一般に使われているバーコードは、JANシンボルといわれ、そのルーツはアメリカに
ある。大手の大型小売店チェーンのクロガーが、1967年に初めて商品にバーコードをつ
けて、コンピュータに入力する方法を実用化した。その後アメリカの米国フードチェーン協会
などが中心となって、1973年一般商品コード「UPC」(Universal Product Code)を制
定した。イギリス・フランス・ドイツなどのヨーロッパ各国も「UPC」に倣って、1977年共通の
商品コード「EAN」を制定し、日本も翌1978年、これに参加した。
バーコードを光学的に読み取る仕組みが「POS」 (Point Of Sale)システムで実現さ
れ、普及が進んでいる。
このページでは、バーコードの仕組みについて、まとめてみたい。
バーコードには、標準タイプの13桁と短縮タイプの8桁の2種類がある。
標準タイプ
桁 1 2 3 4 5 6 7 8 9 10 11 12 13
国コード 標準メーカーコード 商品コード チェックデジット
(日本は49または45)
短縮タイプ
桁 1 2 3 4 5 6 7 8
国コード 短縮メーカーコード 商品コード チェックデジット
これらの数字の中には、価格が含まれていない。価格は別にセットすることになる。逆に、
このことから、特定の日だけ、商品の値札を貼りかえることなく、価格を変えて販売すること
が容易になった。
また、印刷による不備、ゴミ、水などによるバーコードの劣化が原因となる読み取りミスを
検出するため、最後の桁に、チェックデジットが設定されている。
チェックデジットの数字は次のような手順で求められる。
標準タイプの場合
偶数桁の値の和をとり、3倍する・・・・・その値をXとする。
最後の桁を除いた奇数桁の和をとる・・・・・その値をYとする。
X+Yの値を求め、この一の位の数を10から引く・・・・・この値がチェックデジットの値
である。
短縮タイプの場合
上記の手順で、偶・奇を逆にして求める。
(例) 今、私の手元にある商品について、チェックデジットを計算してみよう。
4 9 7 9 0 9 3 0 2 0 7 3 7
X=(9+9+9+0+0+3)×3=90 Y=4+7+0+3+2+7=23
よって、X+Y=90+23=113 より チェックデジットは 10−3=7
4 9 8 4 7 1 5 4
X=(4+8+7+5)×3=72 Y=9+4+1=14
よって、X+Y=72+14=86 より チェックデジットは 10−6=4
バーコードの特徴の1つは、スキャナーを使い瞬時に読み込みができることである。バー
コード内にそれを支援する工夫がなされている。
0〜9までの数字のコード化について
1番目の数字を除いて、全ての数字は、次のルールに従う。
@ 7モデュールで1つの数字を表す
A 黒バーの帯と白バーの帯は各々2箇所ずつ
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
例えば、左の配列で、
数字の「7」が表される。
B 左側(2番目から6桁)は白黒白黒
右側(8番目から6桁)は黒白黒白 で表す
C 右側と左側を区別するために、ガードバーが入る
(注)アメリカを中心としたUPCは、国コードが1桁である。このため、互換性に若干障害が
あり、1番目の数字は他の文字とコード化を異なったものにする必要がある。
白黒白黒の場合で、@Aの条件を満たすものが何通りあるかは、高校1年生で学習する
順列・組合せの理論を用いて間単に求めることができる。
白 黒 白 黒 の幅をそれぞれ X、Y、Z、W とすると、
X+Y+Z+W=7 X、Y、Z、Wは1以上4以下の自然数
が成り立つ。
この式を満たす組(X、Y、Z、W)の個数を求めればよい。
(X−1)+(Y−1)+(Z−1)+(W−1)=3
と変形すると、求める場合の数は、異なる4個のものから重複を許して3個とる組合せの数
に等しい。よって、
(4+3−1)!÷(4−1)!3!=20
で、全部で20通りあることが分かる。
白黒白黒の幅を逆に並べたものも同じ数を表すことにすると、0から9までの10個の数字
を全て表すことができるわけである。
7モジュールのうち、それぞれが 白ならば 0 黒ならば 1 とすると、0
から 9 まで
の数字は、次の表のように定められている。
| 10進数 | セットA | セットB | セットC |
| 0 | 0 0 0 1 1 0 1 | 0 1 0 0 1 1 1 | 1 1 1 0 0 1 0 |
| 1 | 0 0 1 1 0 0 1 | 0 1 1 0 0 1 1 | 1 1 0 0 1 1 0 |
| 2 | 0 0 1 0 0 1 1 | 0 0 1 1 0 1 1 | 1 1 0 1 1 0 0 |
| 3 | 0 1 1 1 1 0 1 | 0 1 0 0 0 0 1 | 1 0 0 0 0 1 0 |
| 4 | 0 1 0 0 0 1 1 | 0 0 1 1 1 0 1 | 1 0 1 1 1 0 0 |
| 5 | 0 1 1 0 0 0 1 | 0 1 1 1 0 0 1 | 1 0 0 1 1 1 0 |
| 6 | 0 1 0 1 1 1 1 | 0 0 0 0 1 0 1 | 1 0 1 0 0 0 0 |
| 7 | 0 1 1 1 0 1 1 | 0 0 1 0 0 0 1 | 1 0 0 0 1 0 0 |
| 8 | 0 1 1 0 1 1 1 | 0 0 0 1 0 0 1 | 1 0 0 1 0 0 0 |
| 9 | 0 0 0 1 0 1 1 | 0 0 1 0 1 1 1 | 1 1 1 0 1 0 0 |
先ほど計算で求めた20通りは全てセットAとセットBに現れている。セットAとセットC
はちょうど白黒が反転したものになっている。バーコードの左側ではセットAが、右側で
はセットCが使われる。このことは、1回でバーコード全てを読み取ることができないと
き、左と右の2つの部分の一方ずつを、分けて読み込むことを可能にしている。
バーコードをよく見ると、国コードを表す1桁目の数字がコード化されていない。1桁目
の数字は、2〜7桁目の数字をコード化するのに、セットA、セットBのいずれかを使った
かの組合せによって定めるようになっている。
因みに、4を表すのに、
2 3 4 5 6 7
A B A A B B
というセットを使って、2〜7桁目の数字をコード化する。
以上のことを踏まえて、実際に、個人的なバーコードを作ってみよう。
今、平成14年1月11日12時45分なので、国コード49を入れて、
4 9 1 4 0 1 1 1 1 2 4 5 のコード化を考える。
まず、チェックデジットを求める。
(9+4+1+1+2+5)×3=66 4+1+0+1+1+4=11
よって、66+11=77 より 10−7=3
従って、チェックデジットは、3である。
以上から、求めるバーコードは、4 9 1 4 0 1 1 1 1 2 4 5 3 となり、
次のような縞模様を得ることができる。

(参考文献:数学セミナー 「身近な数理 バーコード」 (日本評論社)
日本バーコード株式会社ホームページ 「バーコードのお話」)
(追記) 今、平成17年3月21日なので、このページをアップロードして早3年ということに
なる。その間、巷間には何やら怪しげなバーコードが普及してきた。
![]() |
3つの角にある「切り出しシンボル」は、データを切り 出したり傾きなどを検出するためのもの。それらの間 には、座標を決めるパターンが埋め込まれている。右 下には歪みを補正するために利用されるパターン(小 さな四角)も見える。 (左図のコードは、当HPの塾長日記(徒然なるままに) のQRコードである。) |
職場に届く雑誌の一面に、この2次元バーコードがびっしり印刷されているのを見て、思
わず身を引いてしまうのは私だけだろうか?
これは、2次元バーコードの一つで、QRコード(Quick Response Code)といわれるもの
である。(QRコードという名称は、(株)デンソーウェーブの登録商標である。)
トヨタ自動車とデンソーという会社が生産ラインの部品管理のために、1994年に開発、
1999年に日本工業規格(JIS)に制定された。
縦横21×21から177×177まで、全部で40種類の規格があり、数ミリ角からポスタ
ー大まで大きさもいろいろあるらしい。
今までのバーコードでは、一定方向にしか情報を書き込めなかったが、この2次元バー
コードは、縦方向、横方向に情報を書き込むことが可能である。そのため、同一の情報な
ら、今までのバーコードに比べて、およそ十分の一程度の大きさで十分であるという。
数字だけなら、7089字、英数字だと、4296字の情報が書き込めるというから驚きだ。
しかも、30%程度コードの一部に汚れや破損があってもデータの復元は可能らしい。さら
に、3つの角にある「切り出しシンボル」により、360°全方向から読み取りができるという。
進化したバーコードが、どのような仕組みになっているか、大いに興味があるが、今のと
ころ不明である。携帯電話会社などでは、いろいろな情報を2次元バーコードに変換してく
れるサービスもあるようだ。
携帯電話でホームページのアドレスを一字一字打ち込むのは辛い。このQRコードを携
帯カメラで撮影して、URLに変換する機能を持つ携帯電話が最近登場している。これなど
は大変便利な機能だ。私の携帯にもこの機能があって重宝している!
QRコードの進化は著しい。上記では白地に黒のドッとパターンであったが、最近は、カ
ラーのQRコードが出現している。(平成19年6月現在)
5×5のマス目に、赤・緑・青・黒の色の組合せで、1つのコードを表すのだそうだ。商品
の画像そのものの背景に、これらのQRコードを埋め込み、画像を携帯カメラでとると、直
ちにインターネットにアクセスできるようになるという。便利な世の中になったものだ。