令和6年度 春期 午前 問4
基礎理論
誤り訂正後の符号語
符号長 7 ビット,情報ビット数 4 ビットのハミング符号による誤り訂正の方法を,次のとおりとする。受信した 7 ビットの符号語 x₁ x₂ x₃ x₄ x₅ x₆ x₇(xₖ= 0 又は 1)に対して c₀ = x₁ + x₃ + x₅ + x₇,c₁ = x₂ + x₃ + x₆ + x₇,c₂ = x₄ + x₅ + x₆ + x₇(いずれも mod 2 での計算)を計算し,c₀,c₁,c₂ の中に少なくとも一つは 0 でないものがある場合には,i = c₀ + c₁×2 + c₂×4 を求めて,左から i ビット目を反転することによって誤りを訂正する。受信した符号語が 1000101 であった場合,誤り訂正後の符号語はどれか。
- ア1000001
- イ1000101
- ウ1001101
- エ1010101
答えと解説を見る
✓ これが正解エ1010101
解説
i が 3 になるので 3 ビット目を反転します。
設問は、受信した符号語 1000101 を、設問が定めた手順どおりに訂正した結果を選ばせています。軸になるのは、ハミング符号の理屈を思い出すことではなく、書かれている計算をそのまま実行することです。左から順に置くと、1 番目が 1、2 番目が 0、3 番目が 0、4 番目が 0、5 番目が 1、6 番目が 0、7 番目が 1 です。c₀ は 1 番目と 3 番目と 5 番目と 7 番目の和なので 3 となり、2 で割った余りは 1 です。c₁ は 2 番目と 3 番目と 6 番目と 7 番目の和で 1、c₂ は 4 番目と 5 番目と 6 番目と 7 番目の和で 2 なので、余りは順に 1 と 0 です。0 でないものがあるため訂正へ進み、i は 1 と 1 の 2 倍の和で 3 になります。左から 3 ビット目を反転すると 1010101 が得られ、この並びで検査をやり直すと三つとも 0 になります。
ほかの選択肢はなぜ違うのか
- ア1000001:直す位置を 5 と読んだ場合に得られる並びです。三つの検査の値に 1 と 2 と 4 の重みを付けて足すと 3 になるので、5 番目に手を入れると誤りが残ったままになります。
- イ1000101:受け取った並びをそのまま答えとした形です。検査の値に 0 でないものが混じっている以上、誤りがあると判断して訂正の手順へ進む必要があります。
- ウ1001101:直す位置を 4 と読んだ場合に得られる並びです。重みの対応を取り違えると位置が 1 つずれるので、どの検査に幾つを掛けるのかを書き出してから足します。
出典:令和6年度 春期 応用情報技術者試験 午前 問4
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)