ASCII文字Aがハミング距離3を持っているのはなぜですか。
-
29-09-2020 - |
質問
href="https://i.stack.imgur.com/hz4es.png" rel="nofollownoreferrer"> 私の質問は、この建設がハミング距離を3の距離に与えることです。ASCII文字Aのハミング距離が3の理由?ハミング距離をどのように決定しますか?
これは、Andrew S. Tanenbaum Page 206によるコンピュータネットワークからの抜粋です。
解決
code は、 CodeWords として知られている、長さ $ n $ のバイナリベクトルの集まりです。2つのコードワード $ x、y $ の間のハミング距離は、 $ i $の数です。 $ x_i \ neq y_i $ になるようなものです。コードの最小距離は、2つの異なるコードワード間の最小ハミング距離です。
例えば、ハミング(7,4)コード長さ7:
の16符号語0000000
1110000
1001100
0111100
0101010
1011010
1100110
0010110
1101001
0011001
0100101
1010101
1000011
0110011
0001111
1111111
.
3個または4位のどちらかで任意の2つのコードワードが異なることを確認できます。例えば、1010101および0100101は最初の3つの位置が異なる。したがって、コードの最小距離は3です。
単一のコードワードのハミング距離に対しては全く意味がない。ハミング距離はコードワードのペアの特性です。
他のヒント
2つの符号間のハミング距離は、それらの間に異なるビットがある回数、例えば、1011
と1111
の間にハミング距離1のハミング距離です。
あなたが見ている例はコード補正です。ケーブルを通して何も送信すると、いくつかのエラーが発生する可能性があります( BITS 1 to 0
または0 to 1
)。そのため、情報理論のドメイン内のこれらのエラーを最小限に抑える一般的なアルゴリズムがいくつかあります。この例では、目的地によって受信される前後の文字aのバイナリコードを示しています、 3のハミング距離が見つかりました3ビットが変更されたことはわかりました。
以前にいくつかの関連機能を実装し、私のgithubにもっと詳しく説明されています。興味がある場合は、