偶数パリティ
パリティビットの種類だよ
あるいは、パリティチェックの やり方だよ
データ内の「1」の個数が偶数だったらパリティビットが「0」になるよ
データ内の「1」の個数が奇数だったらパリティビットが「1」になるよ
「データ+パリティビット」内の「1」の個数が偶数になるよ
簡単に書くよ
偶数パリティ(読:グウスウパリティ 英:even parity)とは
データ内の「1」の個数が偶数か奇数かを表す目印(パリティビット)の種類のひとつ
であり
データ(「0」と「1」の集まり)の「1」の個数が偶数だったら「0」になり奇数だったら「1」になるパリティビットのこと
です。
あるいは
データ(「0」と「1」の集まり)の「1」の個数が偶数だったら「0」になり奇数だったら「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」になるパリティビット
は、あるいは、このパリティビットを使ってやるパリティチェックは「奇数パリティ」と言います。
気が向いたら、併せて覚えてあげてください。
偶数パリティと奇数パリティの区別の仕方は、実は簡単です。
「偶数だったら『0』を付けて……奇数だったら『1』を付けて……」とか覚える必要ありません。
最終的に「1」の数が偶数になるようにパリティビットを付けるのが偶数パリティ
です。
例えば
101
にパリティビット「0」を付けて
1010
にしたとしましょう。
そうすると、パリティビットを付けた後のデータは「1」の個数が偶数になっていますよね。
あるいは
100
にパリティビット「1」を付けて
1001
にしたとしましょう。
こちらも、パリティビットを付けた後のデータは「1」の個数が偶数になっていますよね。
これが偶数パリティです。
ついでなので奇数パリティの説明もしておきます。
最終的に「1」の数が奇数になるようにパリティビットを付けるのが奇数パリティ
です。
例えば
100
にパリティビット「0」を付けて
1000
にしたとしましょう。
そうすると、パリティビットを付けた後のデータは「1」の個数が奇数になっていますよね。
あるいは
101
にパリティビット「1」を付けて
1011
にしたとしましょう。
こちらも、パリティビットを付けた後のデータは「1」の個数が奇数になっていますよね。
これが奇数パリティです。
もちろん、素直に
偶数パリティ:「1」の個数が偶数だったら「0」で奇数だったら「1」
奇数パリティ:「1」の個数が奇数だったら「0」で偶数だったら「1」
と覚えてもOKですけどね。
個人的には
偶数パリティ:パリティビットを付けた後の「1」の個数が偶数になる
奇数パリティ:パリティビットを付けた後の「1」の個数が奇数になる
の方が覚えやすい気がします。
一言でまとめるよ
まぁ「偶数パリティ」って単語が出てきたら「データ内の『1』の個数が偶数だと『0』で奇数だと『1』になるパリティビット
(データ内の「1」の個数が偶数か奇数かを表す目印)(を使ったパリティチェック
(データがおかしくなってないかチェックするやり方のひとつ))なんだな~」と お考えください。
おまけ
■訳してみるよ
「偶数」は日本語ですね。
「parity(パリティ)」の意味は「等価」とか「同量」とか「同等」とか「同額」とか「一致」とか「偶奇性」とか「奇偶」とかです。
何となく くっつけると
偶数の奇遇
となります。
■検索してみる?






