パリティチェックとは?そもそもパリティって?分かりやすく解説しました!

パリティチェック

こんにちは、krです。

今回は「パリティチェックとは何なのか?」「そもそもパリティとは?」について分かりやすく解説します。

初学者におすすめの論理回路の参考書3選

パリティチェックって何?

導入

例えば、$10001$という符号を送信したのに、何らかの原因によって、$10000$という符号に変わってしまったとしましょう。

こんなことあってはいけません。LINEで「好き」と送ったのに、相手には「嫌い」と届いていたら、一生LINEは使いませんよね。

なので、もし何らかの原因で送る情報が変わってしまっても、それが正しい情報なのか、間違った情報なのか分からないといけません。

パリティチェックていうのは、そういう「受信した符号が正しいのか、間違っているのかを判別する方法」のことなんです。

パリティチェックのやり方

パリティチェックをするために、符号はそのままの形で送信されるのではなく、検査ビット(パリティビット)というものを付け加えて送信します。まぁ、符号が正しいかを示す目印みたいなもんだと思ってください。

パリティチェックには2種類あります。それが「偶数パリティ」と「奇数パリティ」です。

パリティチェックの種類

偶数パリティ・・・送信符号の中の1の数が偶数個になるように検査ビットを付け加えて行うパリティチェック

奇数パリティ・・・送信符号の中の1の数が奇数個になるように検査ビットを付け加えて行うパリティチェック

まずは「偶数パリティ」や「奇数パリティ」とはパリティチェックのことなんだと理解しましょう。

そして、偶数パリティのときと、奇数パリティのときで検査ビットがどう変わるかを示したものが以下の図になります。

例えば、偶数パリティで「10101」という符号を送ることを考えましょう。このとき検査ビットは「1」なので、送信符号は「101011」になります。この符号を送信したら、何らかの外的要因により「101001」という符号に変わってしまいました。

受信側は偶数パリティであることを知っているので、符号の中の1の数が偶数個かを確かめますが、奇数個しかありません。そのため、「受信符号は正しくない!」と分かるわけです。

これがパリティチェックです。なぜパリティチェックで符号が間違っていると分かるのか理解できたでしょうか?

くるる
くるる

なんかややこしいっすね~

ここをちゃんと理解することが重要です!

先生
先生

パリティとパリティチェックの関係性

パリティとパリティチェックって何が違うんだ?そもそもパリティって??

恐らく、パリティチェックを習いたての頃は、パリティとパリティチェックの違い、そもそもパリティとは何なのかが良く分からないと思います。なので、ここで整理おきましょう。


パリティ(parity)は日本語で「偶奇性」という意味を持っています。偶奇性ってのは「偶数か奇数かどっち?」って感じの意味です。そうすると、パリティチェックてのは「偶奇性チェック」って意味だったりします。

では何の「偶奇性」なのかというと、「符号の中に1が偶数個あるか、奇数個あるか」です。1が偶数個あればパリティは偶数だし、1が奇数個あればパリティは奇数です。

ポンタ
ポンタ

では、偶数パリティ・奇数パリティとは何なのですか?

これはちょっとややこしいのですが、パリティを「偶奇性」と考えれば、偶数パリティは言い換えると「偶数性」、奇数パリティは「奇数性」みたいな意味があり、「偶数パリティでパリティチェックを行う」みたいな文は、「送受信符号に偶数性があると考えた状態で受信符号の偶奇性をチェックする」みたいな意味になるんです。

そこから転じて、「偶数パリティ・奇数パリティ」=「パリティチェック」と考えるようになったのではないかと思います。

パリティとパリティチェックはどう違うんすか?

くるる
くるる

これもまた難しい話で、「偶数パリティ・奇数パリティ」=「パリティチェック」であることに影響を受けたのかは分からないですが、パリティもパリティチェックを指して使われているみたいです。

だから、「パリティ」=「偶数パリティ・奇数パリティ」=「パリティチェック」みたいな良く分からない状況になっています。

全体を通して良く分からないと思われたかもしれませんが、とりあえず

MEMO
「パリティ」=「偶数パリティ・奇数パリティ」=「パリティチェック」

って感じなんだな~とだけ理解しておけば大丈夫です。今回はここまで!

お疲れ様でした!

先生
先生
おすすめの参考書

初学者におすすめな参考書を調査してまとめてみました。良かったら参考にしてください。

初学者におすすめの論理回路の参考書3選

コメントを残す

CAPTCHA


PHP Code Snippets Powered By : XYZScripts.com