ハミング符号

ハミングコードとは、誤り訂正ブロックコードのことである。このコードは、1950年代に開発したリチャード・ハミングにちなんで名付けられた。当時、ハミングはリレーを備えた機械で作業をしており、データを読み取るためにパンチングカードを使用していました。頻繁に使用されていたため、パンチングカードにはしばしばエラーが発生し、従業員が修正する必要がありました。

ハミングコードは、デジタル信号処理や電気通信に使用されています。ハミングコードは、一定のルールに従って生成されます。ハミングコードは複数のパリティビットを使用します。パリティビットは、ビットのグループが偶数または奇数であるかどうかを指示します。ハミングコードでは、データの各ビットは複数のパリティビットで覆われている。これにより、エラーを検出し、場合によってはエラーを修正することができます。ハミングコードは冗長性を利用する。コードワードごとにパリティビットが3つある場合、コードワードの長さは7(2 k - 1 {displaystyle 2^{k}-1{\displaystyle 2^{k}-1}} , kをパリティビットの数として)でなければならない。これにより、この例では、1コードワードあたり4ビットのユーザデータが残る。通常、これは(N,n)と書かれ、最初の数はコードワードの全長であり、2番目の数はユーザデータのビット数である。上の例では、(7,4)となっている。

最短可能なハミングコードは(3,1)であり、2つのパリティビットが1つのデータビットに使用されます。このコードには2つの有効な値000111があります - コード001,010,100は送信エラーであり、有効なコードワード000に割り当てられます。他の可能性のある011,101,110は'111'に変更されます。

質問と回答

Q:ハミングコードとは何ですか?


A:ハミングコードとは、1950年代にリチャード・ハミングによって開発された誤り訂正ブロック符号です。デジタル信号処理、電気通信などで、誤り検出、誤り訂正に利用されています。

Q:ハミングコードの仕組みは?


A:ハミングコードは、データの各ビットを複数のパリティビットでカバーすることにより、誤りを検出し、場合によっては訂正することができます。また、冗長性を持たせているため、符号語の全長は2^k - 1(kはパリティビットの数)に等しくなければなりません。

Q:ハミングコードを発明したのは誰ですか?


A:ハミングコードは、1950年代にリチャード・ハミングによって発明されました。

Q:リチャード・ハミングは自分の発明を何に使ったのか?


A:開発当時、リチャード・ハミングは、リレーを備えた機械で多用されていたパンチカードの誤りを訂正するために彼の発明を利用しました。現在では、主にデジタル信号処理、通信に利用されています。

Q:ハミングコードの場合、(N,n)と表記されるのは?


A:ハミングコードの(N,n)は、符号語の長さ(1番目の数字)とユーザデータのビット数(2番目の数字)の合計を意味します。例えば、(7,4)は合計7ビットで、4ビットがユーザデータのビットであることを意味します。

Q:最短のハミングコードとは何ですか?


A: 最も短いハミングコードは(3,1)で、これは3ビットの合計があり、1がユーザデータのビットであることを意味します。

AlegsaOnline.com - 2020 / 2023 - License CC3