SkillStack
テクノロジ系4 / 80問

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

ハミング符号とは、データに冗長ビットを付加して、1 ビットの誤りを訂正できるようにしたものである。ここでは、X₁、X₂、X₃、X₄ の 4 ビットから成るデータに、3 ビットの冗長ビット P₃、P₂、P₁ を付加したハミング符号 X₁X₂X₃P₃X₄P₂P₁ を考える。付加したビット P₁、P₂、P₃ は、それぞれ X₁ ⊕ X₃ ⊕ X₄ ⊕ P₁ = 0 X₁ ⊕ X₂ ⊕ X₄ ⊕ P₂ = 0 X₁ ⊕ X₂ ⊕ X₃ ⊕ P₃ = 0 となるように決める。ここで、⊕ は排他的論理和を表す。  ハミング符号 1110011 には 1 ビットの誤りが存在する。誤りビットを訂正したハミング符号はどれか。

選択肢を押すと答え合わせができます。

正解と解説を見る

【正解】ア

受信した1110011を、X₁X₂X₃P₃X₄P₂P₁に対応させると、X₁=1、X₂=1、X₃=1、P₃=0、X₄=0、P₂=1、P₁=1です。三つの検査結果を計算すると、X₁⊕X₃⊕X₄⊕P₁=1⊕1⊕0⊕1=1、X₁⊕X₂⊕X₄⊕P₂=1⊕1⊕0⊕1=1、X₁⊕X₂⊕X₃⊕P₃=1⊕1⊕1⊕0=1です。三つ全てが1になるのは、全ての検査式に含まれるX₁が誤っていることを示します。先頭ビットを1から0へ反転すると、訂正後は0110011です。実際、訂正後に三つの式を計算すると、いずれも0になります。

イの1010011は誤りです。これはX₂を反転した符号です。X₂は第2、第3の検査式には含まれますが、第1の検査式には含まれないため、全ての検査結果が1という状態には対応しません。

ウの1100011は誤りです。これはX₃を反転した符号です。X₃は第1、第3の検査式に含まれ、第2の検査式には含まれません。

エの1110111は誤りです。これはX₄を反転した符号です。X₄は第1、第2の検査式に含まれ、第3の検査式には含まれません。

【ポイント】 排他的論理和は、1の個数が奇数なら1、偶数なら0になります。 各検査式の結果を並べたシンドロームから、誤り位置を特定できます。 ハミング符号は1ビット誤りを訂正できますが、複数ビットの誤りを常に訂正できるわけではありません。

出典:令和4年度 春期 応用情報技術者試験 午前 問4
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。

この回の80問を、アプリで通しで解く

  • 本番と同じ問題数・制限時間で通し演習(模試モード)
  • 間違えた問題は自動で「復習すべき問題」に回る
  • 解説で分からない点はAIに質問できる
SkillStackで無料で始める