QRコードの概要
符号化(エンコード)
エラー訂正の概要
エラー訂正に必要な「行列」の解説
「行列」を使ってエラー訂正をしよう
リード・ソロモン符号とエラー訂正の方法
多項式の割り算
リード・ソロモン符号の作り方
ガロア理論と体
QRコードを作ろう
QRコードメーカー
独極・QRコード担当の「あじな」です。
今日のテーマは前回に引き続き、「想いを伝える」お話しです(嘘です)。

これまでの復習 [表示する]

  1. QRコードは株式会社デンソーが作ったもので、スマホや携帯で読み取れる
  2. QRコードは「小さな白と黒の四角でできている」「多少汚れても大丈夫」という特徴がある
  3. 白黒の四角を使うのは、コンピュータにわかりやすくさせるため
  4. QRコードは「機能パターン」と「符号化領域」で出来上がっている
  5. 「機能パターン」は、「クワイエットゾーン」「位置検出パターン」「位置検出パターンの分離パターン」「タイミングパターン」「位置合わせパターン」の5種類
  6. 「符号化領域」は「形式情報」「型番情報」「データ領域」の3種類
  7. 「形式情報」は「エラー訂正レベル」と「マスクパターン参照子」で決まり、「\(4 \times 8=32\)」種類のパターンがある
  8. 「型番情報」は「QRコードのバージョンによって決まり、40種類ある
  9. 「データ領域」は「データ」と「エラー訂正情報」で出来上がる
  10. QRコードはバージョンが1~40まである。一辺の大きさは、「QRコードのバージョン(1~40)\( \times \)4\( + \)17」
  11. 「エラー訂正レベル」は「L(7%の汚れまで)」「M(15%の汚れまで)」「Q(25%の汚れまで)」「H(30%の汚れまで)」の4種類ある
  12. 「1bit」とは白・黒、1・0のような2種類の情報を表すことができる能力のことである

「1bit」では足りない!!

1と0や、白と黒といった1文字で2種類表すことができるということを前回解説しました。

世の中に「晴れ」と「雨」だけしか情報がなければ「1bit」でも事足りるのですが、そんなわけないですよね。
白・黒や1・0の「1bit」だけではたくさんの情報を表すことができません。

沢山の情報を「1」と「0」で表そうと思ったら、どうすればよいのでしょうか?

そんなときは、文字を増やせばいいんです!
当たり前か・・・


例えば、2文字使うと、1文字目が2種類、2文字目も2種類の情報を表すことができるので、全部で「\(2^2=2 \times 2 =4\)」種類の情報を表すことができます。

このように、「1bit」の文字が2つある状態を、「2bit」と呼びます。

3文字だと、全部で「\(2^3=2 \times 2 \times 2 =8\)」種類の情報を表すことができます。
「1bit」の文字が3つあると、「3bit」と呼びます。

同様に、8文字あれば、全部で「\(2^8=2 \times 2 \times 2 \times 2 \times 2 \times 2 \times 2 \times 2 =256\)」種類の情報を表すことができます。
「1bit」の文字が8つあると、「8bit」と呼びます。

2乗の書き方

ちょっとだけ、横道にそれますが、たくさん掛け算をするときに簡単に表現する方法がありますので紹介しましょう。

数学の世界では、「\(46 \times 46\)」や「\(5 \times 5\)」等、同じ数字を2回掛け算するときは、「\(46^2\)」、「\(5^2\)」のように右肩に「2」の数字をつけて表します。
ちなみに「\(46^2\)」は「46の2乗」と読みます。

同じ数字を3回かける(\(46 \times 46 \times 46\))ときは「\(46^2\)」と右肩に「3」の数字をつけて表し、「46の3乗」と読みます。

このような数字の右肩に数字をつけて、「右肩に乗っている数字の回数分だけ掛け算する」という計算を「累乗」と呼びます。「累乗」を使うと同じ数字の掛け算が簡単に表現できますよね。

つまり、文字がたりないときは・・・

要するに、1文字では足りない場合は、2文字で。2文字で足りない場合は3文字を使えということです。

文字が1つ増えるたびに、1文字で表すことができる種類分だけ掛け算で増えていきます。
なんか、当たり前のようで改めて数式で種類を表されると新鮮ですね。

ちょっとQRコードっぽい話

ちなみに、QRコードの大きさはバージョンによって異なるのですが、バージョン1では「\(21 \times 21=441\)」個のセルが使われています。

1つのセルを1文字とみなすと、1文字では白と黒の2種類が表せます。
そうすると、441個のセルでは「\(2^{441}\)」種類(1の後に、0が1000個以上続くぐらいのすごい大きな数)表すことができます。

文字をたくさん使うと、沢山のものを表現できることがわかっていただけたでしょうか。
次回の解説では、私たちが普段使っている言葉を1・0や白・黒の表現に変換することを考えてみます。