[第77回]国家試験解説[AP令和4年春]

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

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

ア:0110011  イ:1010011  ウ:1100011  エ:1110111

出典 IPA公開[過去問題]:https://www.ipa.go.jp/shiken/mondai-kaiotu/gmcbt80000009sgk-att/2022r04h_ap_am_qs.pdf

ハミング符号「1110011」を「ハミング符号:X1 X2 X3 P3 X4 P2 P1」に当てはめていきます。

これを問題文にある式に代入していきます。

①X1 ⊕ X3 ⊕ X4 ⊕ P1=0
⇒ 1 ⊕ 1 ⊕ 0 ⊕ 1 = 0

②X1 ⊕ X2 ⊕ X4 ⊕ P2=0
⇒ 1 ⊕ 1 ⊕ 0 ⊕ 1 = 0

③X1 ⊕ X2 ⊕ X3 ⊕ P3=0
⇒ 1 ⊕ 1 ⊕ 1 ⊕ 0 = 0

排他的論理和では1の数が奇数の場合、結果は1になります。しかし、実際に演算してみると全ての式で1の数が奇数なのに結果は0になっています。本来は0が出力されるはずなので全ての式が間違えていることになります。問題文では「1ビットの誤りが存在する」とあるので間違いは1か所だけです。全ての式に共通しているX1を0にすることで全ての式の演算結果が0になります。

正解は、「ア:0110011」です。