ハミング符号は、メモリなどのデータ伝送における誤り検出・訂正のために設計された符号化方式です。具体的には、データビットに冗長なチェックビット(誤り検出・訂正のための追加ビット)を付加することで、1ビットの誤りを訂正し、2ビットの誤りを検出することが可能です。これは、チェックビットの配置と計算方法によって実現されます。
奇数パリティは、データビットに含まれる1の個数が奇数になるようにチェックビットを付加する方式で、1ビットの誤り検出は可能ですが訂正はできません。水平パリティは、通常、データブロック全体に対して1つのパリティビットを付加するもので、これも1ビットの誤り検出が主目的です。チェックサムは、データブロックの合計値を計算して付加する方式で、誤りの検出は可能ですが、誤り訂正機能は持ちません。したがって、2ビットの誤り検出と1ビットの誤り訂正という両方の機能を併せ持つのはハミング符号となります。