0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ハミング符号の訂正

Posted at

応用情報技術者平成30年春期 午前問3

ハミング符号とは,データに冗長ビットを付加して, 1ビットの誤りを訂正できるようにしたものである。ここでは,X1,X2,X3,X4の4ビットから成るデータに,3ビットの冗長ビットP3,P2,P1を付加したハミング符号 X1X2X3P3X4P2P1を考える。付加ビットP1,P2,P3は,それぞれ
  X1⊕X3⊕X4⊕P1=0
  X1⊕X2⊕X4⊕P2=0
  X1⊕X2⊕X3⊕P3=0
となるように決める。ここで⊕は排他的論理和を表す。
  ハミング符号 1110011 には1ビットの誤りが存在する。誤りビットを訂正したハミング符号はどれか。

image.png

ロジックとしては、
X1X2X3P3X4P2P1 = 1110011 とすると、
 X1=1,X2=1,X3=1,X4=0,
 P1=1,P2=1,P3=0
になりますね。

そうすると、付加したハミング符号の結果は、

式1) X1⊕X3⊕X4⊕P1 =1⊕1⊕0⊕1 0⊕1 =1
式2) X1⊕X2⊕X4⊕P2 =1⊕1⊕0⊕1 0⊕1 =1
式3) X1⊕X2⊕X3⊕P3 =1⊕1⊕1⊕1 0⊕1 =1

になります。

つまり、三つはすべて間違っているよね。
その三つは、全てあるのビットは、X1ですので、X1が間違っていることが分かれます。
なので、X1を訂正しなきゃいけないです。訂正の方法は唯一で、反転ですね、
1110011 → 0110011
になります。

考え方が分かった上で、仮に、条件は下記のよう
式1)0
式2)1
式3)1
に変わるとすると、間違っているのはどれかとは、X2ですね。

式達の結果により、どのビットが間違っていることが分かれることは、ハミング符号とのものです。

参照:
https://kanauka.com/kakomon/ko/h25h/001.html

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?