The Gateway to Computer Science Excellence
First time here? Checkout the FAQ!
+13 votes

Following $7$ bit single error correcting hamming coded message is received.

Determine if the message is correct (assuming that at most $1$ bit could be corrupted).
If the message contains an error find the bit which is erroneous and gives correct message.

asked in Computer Networks by Veteran (69k points)
edited by | 945 views

5 Answers

+10 votes
Best answer

Here Answer is yes. There is error in This message. Error is in bit $6$.

How to calculate it ? First of all reverse given input to get it in correct
position from $1$ to $7$.


$\text{Bit-1, Bit-2 & Bit-4}$ are partity bits.

Calculating position of error $\Rightarrow$

$\text{$\large c_3 c_2 c_1$}$

$\text{1   1   0}$

Here, $c1 = bit4\oplus bit5 \oplus bit6 \oplus bit7=0\oplus 0\oplus 0\oplus 1=1$
                   $\text{ (Taking Even parity )}$

          $c2  = bit2\oplus bit3\oplus bit6\oplus bit7=1\oplus 1\oplus 0\oplus 1=1$

          $c3 = bit1\oplus bit3\oplus bit5\oplus bit7=0\oplus 1\oplus 0\oplus 1=0$

Ref $\Rightarrow$,4%29

When you correct bit $6$.

You get message as $0110011$.

IF you calculate $\large c_1,c_2,c_3$ all will be $0$ now !

answered by Veteran (49.5k points)
edited by

See example here..

good read if u want to grasp it completely.

@Rajesh This link is so "Big" to read :P
if assume odd parity then bit 1 has error ,it should be zero
by default which one to choose odd or given ?
+4 votes


Error bit is 6 ... Msg is 1100110


answered by Veteran (23.9k points)
edited by
+1 vote
6th bit is having error both parity bit 2 and 4 support this so 6 bit need to be 1 and data must be 1100110
answered by (39 points)
0 votes

Yes there is an error in this message at 6-bit position so the correct message is 1100110

answered by (225 points)
–1 vote
Answer: Bit 5 has the error. It should be 1.

Here, parity bits are 1,2,4 (power of 2).

Hamming code based on data bits received = 110
Bit 1 = Bit 3 $\oplus$ Bit 5 = 1 $\oplus$ 0 = 1. (XOR of all bits having the least significant digit as 1)
Bit 2 = Bit 3 $\oplus$ Bit 6 = 1 $\oplus$ 0 = 1. (XOR of all bits having the second least significant digit as 1)
Bit 7 = Bit 4 $\oplus$ Bit 5 $\oplus$ Bit 6 = 0 $\oplus$ 0 $\oplus$ 0 = 0. (XOR of all bits having the third least significant digit as 1)

But the received message has Bit 1 = 0, Bit 2 = 1, Bit 7 = 1 (Actual hamming code)

Bit error = Hamming code based on data bits received $\oplus$ Actual hamming code = 110 $\oplus$ 011 = 101 (i.e. Bit 5 has the error)
answered by Veteran (36.4k points)

the answer is should be bit 6.if you consider forouzan's book of data networking, the answer should be bit 6.then the correct message will be 1100110.

her the parity bits are bit 1,bit 2, bit 4.

now to calculate bit 1=bit1⊕bit3⊕bit5⊕bit7=0⊕1⊕0⊕1=0

again,to calculate bit 2=bit2⊕bit3⊕bit6⊕bit7=1⊕1⊕0⊕1=1

again,to calculate bit 3=bit4⊕bit5⊕bit6⊕bit7=0⊕0⊕0⊕1=1

therefore ,the error is at the position 110 = 6 

please ,think of it mr @jon_snow.


Sudipta Paul

Your answer is correct !

is it correct?
yes it is

Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true

33,712 questions
40,255 answers
38,883 users