0% found this document useful (0 votes)
2 views2 pages

Hamming Code Example

The document explains how to encode a binary word using even parity Hamming code, detailing the calculation of redundant bits and their placement. It also describes the process for detecting and correcting errors in the transmitted Hamming code by checking parity bits. An example illustrates both encoding and error correction steps, demonstrating how to identify and fix a specific bit error in the received code.

Uploaded by

rimmy.cse
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views2 pages

Hamming Code Example

The document explains how to encode a binary word using even parity Hamming code, detailing the calculation of redundant bits and their placement. It also describes the process for detecting and correcting errors in the transmitted Hamming code by checking parity bits. An example illustrates both encoding and error correction steps, demonstrating how to identify and fix a specific bit error in the received code.

Uploaded by

rimmy.cse
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Example :

Encode a binary word 11001 into the even parity hamming code.

Given, number of data bits, n =5.

To find the number of redundant bits,

Let us try P=4.

The equation is satisfied and so 4 redundant bits are selected.

So, total code bit = n+P = 9

The redundant bits are placed at bit positions 1, 2, 4 and 8.

Construct the bit location table.

Bit Location 9 8 7 6 5 4 3 2 1

Bit designation D5 P4 D4 D3 D2 P3 D1 P2 P1

Binary representation 1001 1000 0111 0110 0101 0100 0011 0010 0001

Information bits 1 1 0 0 1

Parity bits 1 1 0 1
To determine the parity bits

For P1: Bit locations 3, 5, 7 and 9 have three 1s. To have even parity, P1 must be 1.

For P2: Bit locations 3, 6, 7 have two 1s. To have even parity, P2 must be 0.

For P3: Bit locations 5, 6, 7 have one 1s. To have even parity, P3 must be 1.

For P4: Bit locations 8, 9 have one 1s. To have even parity, P2 must be 1.

Thus the encoded 9-bit hamming code is 111001101.

How to detect and correct the error in the hamming


code?
After receiving the encoded message, each parity bit along with its corresponding
group of bits are checked for proper parity. While checking, the correct result of
individual parity is marked as 0 and the wrong result is marked as 1.

After checking all the parity bits, a binary word is formed taking the result bits for
P1 as LSB. So formed binary word gives the bit location, where there is an error.

If the formed binary word has 0 bits, then there is no error in the message.

Example problem 2
Let us assume the even parity hamming code from the above example
(111001101) is transmitted and the received code is (110001101). Now
from the received code, let us detect and correct the error.

To detect the error, let us construct the bit location table.

Bit Location 9 8 7 6 5 4 3 2 1

Bit designation D5 P4 D4 D3 D2 P3 D1 P2 P1

Binary representation 1001 1000 0111 0110 0101 0100 0011 0010 0001

Received code 1 1 0 0 0 1 1 0 1
Checking the parity bits

For P1 : Check the locations 1, 3, 5, 7, 9. There is three 1s in this group, which is


wrong for even parity. Hence the bit value for P1 is 1.

For P2 : Check the locations 2, 3, 6, 7. There is one 1 in this group, which is wrong
for even parity. Hence the bit value for P2 is 1.

For P3 : Check the locations 3, 5, 6, 7. There is one 1 in this group, which is wrong
for even parity. Hence the bit value for P3 is 1.

For P4 : Check the locations 8, 9. There are two 1s in this group, which is correct
for even parity. Hence the bit value for P4 is 0.

The resultant binary word is 0111. It corresponds to the bit location 7 in the above
table. The error is detected in the data bit D4. The error is 0 and it should be
changed to 1. Thus the corrected code is 111001101.

You might also like