2

私はこの問題に答えるのに苦労しています。元の質問は次のとおりです。

ワードはチェックビット0111(c8、c4、c2、およびc1)でエンコードされます。単語は11101011(データ)として読み戻されます。元のデータワードは何ですか?

チェックビットが4つあるので、これは4ビットのメモリワードである必要があると思いました。可能なワードは16のみです0000, 1000, 0100, 1100, 0010, 1010, 0110, 1110, 0001, 1001, 0101, 1101, 0011, 1011, 0111, 1111。したがって、各コードワードには8ビットがあり、チェックビットは1、2、4、および8の位置にあります。

  • ビット1はビットのパリティをチェックします:1、3、5、7、9、11
  • ビット2はビットのパリティをチェックします:2、3、6、7、10、11
  • ビット4はビットのパリティをチェックします:4、5、6、7、12
  • ビット8はビットのパリティをチェックします:8、9、10、11、12

また、1のチェックの総数が奇数の場合はパリティビットを1に設定し、すべての1のチェックが偶数の場合はパリティビットを0に設定することも知っています。

リードバックされた単語にはエラーが含まれている必要があり、修正する必要があると思います。これにより、元のデータ単語を見つけることができます。

これはこの質問で何が起こっているのですか?

4

1 に答える 1

0

メッセージ:11000010

方法A:

CBA987654321  <-- Hexadecimal
1100?001?0??

C=1100
B=1011
5=0101
______
X=0010

すべてのビット(XOR)を垂直方向にテストします。

解決:

1100?001?0??
    0   0 10

110000010010

方法B:

CBA987654321  <-- Hexadecimal
1100?001?0??
于 2015-09-28T18:53:16.400 に答える