パリティビット
データ内の「1」の個数が偶数か奇数かを表す目印だよ
パリティチェックの話で出てくるよ
簡単に書くよ
パリティビット(英:parity bit)とは
送り手側では送るデータ(「0」と「1」の集まり)の「1」の個数が偶数か奇数かの目印(「0」か「1」)を付けて送ってやり、受け手側ではデータ内の「1」の個数と偶数・奇数の目印が一致するか確認することでデータがおかしくなってないかチェックするやり方である「パリティチェック」の話で出てくる用語のひとつ
であり
データ内の「1」の個数が偶数か奇数かを表す目印のこと
です。
詳しく書くよ
順番に見ていきましょう。
まずは予備知識として「パリティチェック(パリティ)」についてガッツリと説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。
大前提として、コンピュータさんは「0(ゼロ)」と「1(イチ)」しか分かりません。
「0(ゼロ)」と「1(イチ)」の組み合わせで、文字を表現したり、音楽を表現したり、動画を表現したり、コンピュータの世界のあれやこれやを扱っています。
例えば、ピヨ太パソコンからピヨ子パソコンにメールを送ったとしましょう。
このメールも、コンピュータさんにとっては「0(ゼロ)」と「1(イチ)」の集まりです。
人間様の見えないところでは「0100101010011100001011111001110……」みたいな形で扱われているのです。
まずは
どんなデータもコンピュータさんにとっては「0」と「1」の集まり
というのを押さえておいてください。
パリティチェックは
1.送り手側でデータの中にある「1」の個数を数える
2.「1」の個数が偶数か奇数かの目印を付ける
例)偶数だったら「0」奇数だったら「1」を付ける
3.目印を付けたデータを相手に送る
4.受け手側でデータの中にある「1」の個数を数える
5.目印の示す偶数・奇数と実際の「1」の個数の偶数・奇数が一致するか判定する
ことで、データがおかしくなっていないかチェックするやり方です。
単に「パリティ」と表現される場合もあります。
例えば、そうですね。
まず前提として、偶数・奇数を表す目印は
「1」の個数が偶数→「0」
「1」の個数が奇数→「1」
を付けることにしましょう。
その上で、ピヨ太パソコンからピヨ子パソコンに
101
というデータを送ることにしました。
送ろうとしたデータの中に「1」は2個あります。
「偶数」個あるわけです。
そこでデータの最後に「1」の個数が偶数であることを表す目印「0」を付けました。
目印を付けた後のデータは
1010
です。
この状態のデータをピヨ子パソコンに送ります。
データを受け取ったピヨ子パソコン側では、データの中にある「1」の個数を数えます。
今回は2個ありました。
ということは「偶数」です。
次に、目印を見ます。
目印は「偶数」を意味する「0」でした。
ふむ。
実際の「1」の個数は偶数でした。
目印は偶数を意味しています。
一致しますね。
このことから、なんとなーくではありますが「多分、おかしくなってないんじゃない?」と判断できます。
せっかくなので、もう一例、見てみましょう。
今度はピヨ太パソコンからピヨ子パソコンに
100
というデータを送ることにしました。
送ろうとしたデータの中に「1」は1個しかありません。
「奇数」個です。
そこでデータの最後に「1」の個数が奇数であることを表す目印「1」を付けました。
目印を付けた後のデータは
1001
です。
この状態のデータをピヨ子パソコンに送ります。
おっと、途中でアクマ君がデータを蹴っ飛ばしてしまいました。
その結果「1001」は「1101」になってしまいました。
データを受け取ったピヨ子パソコン側では、データの中にある「1」の個数を数えました。
その結果「1」は2個でした。
ということは「偶数」です。
次に、目印を見ます。
目印は「奇数」を意味する「1」でした。
あれ?
一致しませんね。
この時点で「どこがおかしいかは分からないけど、何かがおかしいっぽい」ということが分かります。
まぁ、おかしいものは仕方がありません。
もう一度、正しいデータを送ってもらいましょう。
この例のように
1.送り手側で「データの中にある『1』の個数が偶数か奇数かを表す目印」を付けて送ってやる
2.受け手側で、データの中にある「1」の個数と目印を見比べる
ことでデータがおかしくなってないかチェックするやり方がパリティチェック(パリティ)です。
以上を踏まえて、パリティチェックの話で出てくる
「1」の個数が偶数か奇数かを表す目印
が「パリティビット」です。
ビットは、コンピュータさんの世界における「0か1が入る箱」です。
あるいは、この「0か1が入る箱」の数を表す単位が「ビット」です。
一般的には「コンピュータが処理する最小単位」と言われます。
「『1』の個数が偶数か奇数かを表す目印」に入る値は「0」か「1」ですよね。
つまり、ビットです。
「パリティ」チェックで使う「ビット」だから「パリティビット」です。
ちなみに、パリティビットは2種類あります。
1.「1」の個数が偶数だったら「0」で奇数だったら「1」になるパリティビット
2.「1」の個数が奇数だったら「0」で偶数だったら「1」になるパリティビット
の2つです。
この2つのうち
1.「1」の個数が偶数だったら「0」で奇数だったら「1」になるパリティビット
を、あるいは、このパリティビットを使ってやるパリティチェックを「偶数パリティ」と言います。
もう一方の
2.「1」の個数が奇数だったら「0」で偶数だったら「1」になるパリティビット
を、あるいは、このパリティビットを使ってやるパリティチェックを「奇数パリティ」と言います。
気が向いたら、併せて覚えてあげてください。
一言でまとめるよ
まぁ「パリティビット」って単語が出てきたら「データ内の『1』の個数が偶数か奇数かを表す目印なんだな~」と、お考えください。
おまけ
■訳してみるよ
「parity(パリティ)」の意味は「等価」とか「同量」とか「同等」とか「同額」とか「一致」とか「偶奇性」とか「奇偶」とかです。
「bit(ビット)」はIT用語の「ビット」です。
由来は「binary digit(バイナリー・デジット)」らしいですよ。
何となくくっつけると
奇偶(検査で使う)ビット
となります。
■検索してみる?