図のように16ビットのデータを4×4の正方形状に並べ,行と列にパリティビットを付加することによって何ビットまでの誤りを訂正できるか。
ここで,図の網掛け部分はパリティビットを表す。
1|0|0|0|1
0|1|1|0|0
0|0|1|0|1
1|1|0|1|1
0|0|0|1
正答1
解説
正解は1です。
この問題は、データを縦横に並べ、各行と各列にパリティビットを付ける水平垂直パリティ(2次元パリティ)の訂正能力を問うています。
パリティビットは、1の個数が偶数(または奇数)になるように付ける1ビットの検査用ビットです。
【選択肢別解説】
1:○ 1ビットだけ誤ると、その誤りを含む1行と1列のパリティだけが不一致になります。
不一致の行と列の交点が誤りビットの位置として一意に決まるため、そのビットを反転して訂正できます。
2:× 2ビット誤ると、誤りがあることは検出できますが、位置を一つに決められません。
たとえば異なる行・異なる列で2ビット誤ると不一致の行と列が2本ずつになり、交点の候補が4か所できるため訂正できません。
3:× 3ビットの誤りでは、行や列のパリティが打ち消し合う場合があり、位置の特定はできません。
2ビットでも訂正できない以上、3ビットの訂正はできません。
4:× 4ビットの誤りが長方形の4隅に生じると、すべての行・列のパリティが一致してしまいます。
この場合は検出すらできないため、4ビットの訂正はできません。
【ポイント】
水平垂直パリティは「1ビット誤り訂正・2ビット誤り検出」と覚えましょう。
同じく1ビット訂正・2ビット検出ができる方式として、ハミング符号(拡張ハミング符号)もよく出題されます。