情報訂正符号の一つ。ハミング符号ともいう。
例えば4ビットのデータ列があった場合、これに3ビットのハミングコードを与える。
データ列がd0 d1 d2 d3とすると、次のように3ビットのハミングコードを求める。
もし読み出してエラーが発生していた場合は、次のようなXOR演算をしてe0〜e2を算出する。
正常時は、e0 e1 e2は全て0であるので、どのビットが1になるかで、エラービットの位置が求められる。
| e2=0 | e2=1 | ||||||
| e1=0 | e1=1 | e1=0 | e1=1 | ||||
| e0=0 | e0=1 | e0=0 | e0=1 | e0=0 | e0=1 | e0=0 | e0=1 |
| 正常 | p0 NG | p1 NG | d0 NG | p2 NG | d1 NG | d2 NG | d3 NG |
これにより、エラービットが一つまでであれば、その誤りを訂正することが可能となる。