MCPで接続 →

計算を入力してください

公式

広告

結果

奇数パリティビット
1
このビットを付け加えて1の総数を奇数にします
データ内の1の個数 4
パリティビットを含めた1の総数 5
データ長(ビット) 7

奇数パリティビットとは?

パリティビットとは、簡単なエラー検出を行うために2進数データのブロックへ付け加える1ビットの追加情報です。奇数パリティでは、データビットとパリティビット自身を合わせた1の総数が常に奇数になるように、パリティビットの値を決めます。この計算ツールは、入力した2進数文字列に含まれる1の個数を数え、奇数パリティのルールを満たすために必要なパリティビット(0または1)を出力します。

パリティビットを付加し1の総数を奇数にしたデータビット
1の総数が奇数になるよう奇数パリティビットを付加します。

計算ツールの使い方

2進数のデータ文字列(0と1の文字のみ)を入力してください。ツールが1の個数を自動で数えます。すでにその個数が奇数であれば、パリティビットは0になります(変更は不要です)。個数が偶数の場合は、パリティビットを1にすることで、合計が奇数になります。

計算式の解説

データに含まれる1の個数を\(k\)とします。奇数パリティビットは $$P = (k + 1) \bmod 2$$ で求められます。言い換えると、kが偶数のときP=1、kが奇数のときP=0となります。送信する符号語(コードワード)は、元のデータの末尾にPを付け加えたものになり、1の総数が必ず奇数になることが保証されます。

1の個数から奇数パリティビットを計算するフローチャート
1の個数が偶数ならパリティビットは1、そうでなければ0です。

計算例

データ 1011001 を例に考えてみましょう。1の個数を数えると、1が現れる箇所は1、1、1、1の4つで、偶数です。合計を奇数にするにはもう1つ1を加える必要があるため、パリティビットは1になります。完全な符号語は 10110011 となり、1が5個(奇数)含まれます。もしデータが 1011000(1が3個で、すでに奇数)であれば、パリティビットは0になります。

よくある質問

奇数パリティと偶数パリティの違いは? 偶数パリティは1の総数を偶数にし、奇数パリティは奇数にします。このツールでは奇数パリティを使用します。

パリティですべてのエラーを検出できますか? 1ビットのパリティでは、奇数個のビット反転は検出できますが、偶数個のエラーは検出できません。また、エラーの位置を特定したり訂正したりすることもできません。

パリティはどこで使われますか? パリティビットは、シリアル通信(UART)、メモリシステム、その他多くの単純なデータ整合性チェックで利用されています。

最終更新: