ハミングコード
読み:ハミングコード
外語:humming code

 情報訂正符号の一つ。ハミング符号ともいう。
目次

概要
 情報を記録する際に、実際のデータに加えてエラーチェック用のコードを付加しておき、読み出したときにそれを検証して、正しいかどうかを判断する技術のこと。
 ECC付きメモリーやRAID2などで使われる。なお、RAID3RAID4RAID5では、ハミングコードの代わりにより簡略なパリティビットとバイトを使用して誤り訂正をしている。

ハミングコード

算出
 例えば4ビットのデータ列があった場合、これに3ビットのハミングコードを与える。
 データ列がd0 d1 d2 d3とすると、次のように3ビットのハミングコードを求める。

訂正
 もし読み出してエラーが発生していた場合は、次のようなXOR演算をしてe0〜e2を算出する。
 正常時は、e0 e1 e2は全て0であるので、どのビットが1になるかで、エラービットの位置が求められる。
e2=0e2=1
e1=0e1=1e1=0e1=1
e0=0e0=1e0=0e0=1e0=0e0=1e0=0e0=1
正常p0 NGp1 NGd0 NGp2 NGd1 NGd2 NGd3 NG
 これにより、エラービットが一つまでであれば、その誤りを訂正することが可能となる。

再検索