平成30年度 秋期 午前 問9
コンピュータ構成要素
メモリの誤り制御方式で,2 ビットの誤り検出機能と,1 ビットの誤り訂正機能をもたせるのに用いられるものはどれか。
- ア奇数パリティ
- イ水平パリティ
- ウチェックサム
- エハミング符号
答えと解説を見る
✓ これが正解エハミング符号
解説
誤った位置まで特定して直せるのはハミング符号です。
メモリの誤り制御方式のうち、二ビットの誤り検出と一ビットの誤り訂正を同時にもたせるものを選ぶ問いです。鍵になるのは訂正のほうです。検出は壊れたことに気づくところまでで、その先は読み直しや送り直しに頼ります。訂正は、どのビットが壊れたかを特定して直すところまで進みます。四つの方式のうち、位置まで突き止められるのはハミング符号だけです。位置が分かる仕組みは冗長ビットの立て方にあります。冗長ビットを複数本付けておき、一本ずつが異なるビットの組を見張るようにしておくと、どの見張りが異常を知らせたかという組合せから、壊れたビットが一つに絞り込めます。一ビットの訂正と二ビットの検出を同時に行うこの形は、サーバ向けの誤り訂正機能付きメモリとして実装されています。見分けの軸は、その方式が誤りの有無だけを答えるのか、位置まで答えるのかです。有無だけでよければ検査の値は一本で足りますが、位置まで求めるなら、ビットごとに見張られ方を変えておく必要があります。設問に訂正という語があったら、この線で絞り込めます。パリティやチェックサムのような検査値を一本だけ添える方式は、どれだけ工夫しても有無の側にとどまります。
ほかの選択肢はなぜ違うのか
- ア奇数パリティ:一の個数が奇数になるように一ビットを足す方式で、分かるのは誤りがあるかどうかだけです。位置は特定できませんし、二ビットが同時に壊れると一の個数の偶奇が元に戻ってしまうので、誤りがあること自体に気づけません。
- イ水平パリティ:ブロックの行方向に付ける検査ビットで、これも誤りの有無を知らせるだけです。列方向の検査と組み合わせれば交点として位置を絞れますが、設問が挙げているのは行方向だけなので、訂正に必要な情報が足りません。
- ウチェックサム:データを一定の単位で足し合わせた値を添えておき、受け取った側で計算し直して突き合わせる方式です。合計が合わなければ誤りがあると分かりますが、どこが違うのかまでは分からないので、直す用途には使えません。
出典:平成30年度 秋期 応用情報技術者試験 午前 問9
この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)