令和3年度 秋期 応用情報技術者試験 午前 問題 問4

図のように 16 ビットのデータを 4×4 の正方形状に並べ,行と列にパリティビットを付加することによって何ビットまでの誤りを訂正できるか。ここで,図の網掛け部分はパリティビットを表す。

16ビットのデータにパリティビットを付加した状態を表す5行5列の表
図の説明テキスト
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

図のようにデータを正方形状に配置し、行方向(水平方向)と列方向(垂直方向)の両方にパリティビットを付加する方式を 水平垂直パリティ(または2次元パリティ)と呼びます。

この方式で誤りを訂正できる仕組みは以下の通りです。

  • 1ビットの誤りの場合
    データ中のある1ビットに誤り(0と1の反転)が生じたとします。すると、そのビットが含まれる行の水平パリティと、列の垂直パリティの両方で同時にエラーが検出されます。エラーが検出された行と列の 交点 を探すことで、誤りが発生したビットの位置を正確に特定できます。2進数において誤りは「0と1の反転」のみであるため、特定したビットを反転させれば元のデータに 訂正 することができます。

  • 2ビット以上の誤りの場合
    例えば、同じ行にある2つのビットが同時に誤った場合、その行の水平パリティは整合性が保たれてしまい、エラーを検出できません。また、複数の行・列でエラーが検出された場合も、どのビットが誤ったのか一意に特定できなくなります。したがって、確実に誤り位置を特定して訂正できるのは1ビットまでとなります。

よって、図の方式によって訂正できる誤りは 1 ビットまでです。

各選択肢の解説

  • ア: 正解です。水平垂直パリティチェックで確実に訂正できるのは1ビットの誤りまでです。
  • イ: 2ビットの誤りが発生した場合、誤りの位置関係(同一行や同一列など)によってはパリティが合致してしまったり、交点が複数候補として挙がったりするため、確実に訂正することはできません。
  • ウ: 3ビットの誤りが発生した場合も同様に、誤り位置を特定できないため訂正できません。
  • エ: 4ビットの誤りが発生した場合も同様に、誤り位置を特定できないため訂正できません。例えば四角形の頂点の位置で4ビットが反転すると、行・列のすべてのパリティが合致してしまい、誤りの検出自体ができなくなります。

Spineチーム