Hamming Code in Computer Network - GeeksforGeeks
Hamming Code in Computer Network - GeeksforGeeks
2r ≥ m + r + 1
Even Parity Bit: In the case of even parity, for a given set of bits, the
number of 1’s are counted. If that count is odd, the parity bit value is
set to 1, making the total count of occurrences of 1’s an even
number. If the total number of 1’s in a given set of bits is already
even, the parity bit’s value is 0.
Odd Parity Bit: In the case of odd parity, for a given set of bits, the
number of 1’s are counted. If that count is even, the parity bit value
is set to 1, making the total count of occurrences of 1’s an odd
number. If the total number of 1’s in a given set of bits is already
odd, the parity bit’s value is 0.
Step 1: Write the bit positions starting from 1 in binary form (1, 10, 11,
100, etc).
Step 2: All the bit positions that are a power of 2 are marked as parity
bits (1, 2, 4, 8, etc).
Step 3: All the other bit positions are marked as data bits.
Step 5: Since we check for even parity set a parity bit to 1 if the total
number of ones in the positions it checks is odd. Set a parity bit to 0 if
the total number of ones in the positions it checks is even.
To find the redundant bit R1, we check for even parity. Since the
total number of 1’s in all the bit positions corresponding to R1 is an
even number. So, the value of R1 (parity bit’s value) = 0.
R2 bit is calculated using parity check at all the bits positions whose
binary representation includes a 1 in the second position from the
least significant bit. R2: bits 2,3,6,7,10,11
To find the redundant bit R2, we check for even parity. Since the
total number of 1’s in all the bit positions corresponding to R2 is odd
the value of R2(parity bit’s value)=1
R4 bit is calculated using parity check at all the bits positions whose
binary representation includes a 1 in the third position from the
least significant bit. R4: bits 4, 5, 6, 7
To find the redundant bit R4, we check for even parity. Since the
total number of 1’s in all the bit positions corresponding to R4 is odd
so the value of R4(parity bit’s value) = 1
R8 bit is calculated using parity check at all the bits positions whose
binary representation includes a 1 in the fourth position from the
least significant bit. R8: bit 8,9,10,11
To find the redundant bit R8, we check for even parity. Since the
total number of 1’s in all the bit positions corresponding to R8 is an
even number the value of R8(parity bit’s value)=0. Thus, the data
transferred is:
Error Detection and Correction
Suppose in the above example the 6th bit is changed from 0 to 1
during data transmission, then it gives new parity values in the binary
number:
For all the parity bits we will check the number of 1’s in their
respective bit positions.
For R1: bits 1, 3, 5, 7, 9, 11. We can see that the number of 1’s in
these bit positions are 4 and that’s even so we get a 0 for this.
For R2: bits 2,3,6,7,10,11 . We can see that the number of 1’s in
these bit positions are 5 and that’s odd so we get a 1 for this.
For R4: bits 4, 5, 6, 7 . We can see that the number of 1’s in these bit
positions are 3 and that’s odd so we get a 1 for this.
For R8: bit 8,9,10,11 . We can see that the number of 1’s in these bit
positions are 2 and that’s even so we get a 0 for this.
The bits give the binary number 0110 whose decimal representation
is 6. Thus, bit 6 contains an error. To correct the error the 6th bit is
changed from 1 to 0.
(A) x is 0 and y is 0
(B) x is 0 and y is 1
(C) x is 1 and y is 0
(D) x is 1 and y is 1
Answer: (A)
Similarly, lets calculate for y , we will start from c8 and make its
even=>110xy here x is already 0 , so y should be 0.
For more details you can refer GATE | GATE CS 2021 | Set 1 | Question
39 published quiz.
Advantages
Hamming code can detect and correct single-bit errors, enhancing
data reliability during transmission and storage.
It adds a minimal number of redundant bits to the original data,
maintaining a good balance between data integrity and
overhead.The algorithm for generating and checking Hamming code
is straightforward and can be easily implemented in both hardware
and software.
By detecting and correcting errors, Hamming code ensures that the
received data is accurate, reducing the chances of data corruption.
Hamming code is widely used in various fields such as computer
memory (RAM), data storage devices, and communication systems.
Compared to more complex error correction codes, Hamming code
provides a cost-effective solution for applications where single-bit
error correction is sufficient.
Disadvantages
Hamming code can only correct single-bit errors. It is unable to
correct multiple-bit errors, which limits its effectiveness in
environments with high error rates.
While it can detect single-bit and some two-bit errors, Hamming
code cannot detect all multiple-bit errors. This reduces its reliability
in certain applications.
Although it uses fewer redundant bits compared to some other error
correction methods, the addition of these bits still increases the
overall data size, which can be a drawback in bandwidth-
constrained environments.
Implementing Hamming code requires additional hardware or
software resources for error detection and correction, which can be a
limitation in resource-constrained systems.
Conclusion
Hamming code is a method used for error correction in data
transmission. It can detect and correct single-bit errors, ensuring that
the data received matches the data sent. This makes communication
systems more reliable by reducing the impact of errors.
Aptitude
How Engineering Mathematics bits
many redundant Discrete
areMathematics
needed for Operating
Hamming System code?
DBMS Computer Netw
Parity bits in Hamming code are used to ensure that the overall
number of 1s in specific positions is even (even parity) or odd (odd
parity), which helps in error detection and correction.
Dreaming of M.Tech in IIT? Get AIR under 100 with our GATE 2026
CSE & DA courses! Get flexible weekday/weekend options, live
mentorship, and mock tests. Access exclusive features like All India
Mock Tests, and Doubt Solving—your GATE success starts now!
Similar Reads
Why Star network is More Efficient in Network Fault Tolerance in Plac…
Answer: Star networks offer better fault tolerance than bus networks
because a single point of failure in a star network (the central hub) affec…
2 min read
Registered Address:
K 061, Tower K, Gulshan Vivante
Apartment, Sector 137, Noida, Gautam
Buddh Nagar, Uttar Pradesh, 201305
Advertise with us
Company Explore
About Us Job-A-Thon Hiring Challenge
Legal Hack-A-Thon
Privacy Policy GfG Weekly Contest
Careers Offline Classes (Delhi/NCR)
In Media DSA in JAVA/C++
Contact Us Master System Design
GFG Corporate Solution Master CP
Placement Training Program GeeksforGeeks Videos
Geeks Community
Languages DSA
Python Data Structures
Java Algorithms
C++ DSA for Beginners
PHP Basic DSA Problems
GoLang DSA Roadmap
SQL DSA Interview Questions
R Language Competitive Programming
Android Tutorial
DSA/Placements Development/Testing
DSA - Self Paced Course JavaScript Full Course
DSA in JavaScript - Self Paced Course React JS Course
DSA in Python - Self Paced React Native Course
C Programming Course Online - Learn C with Data Django Web Development Course
Structures Complete Bootstrap Course
Complete Interview Preparation Full Stack Development - [LIVE]
Master Competitive Programming JAVA Backend Development - [LIVE]
Core CS Subject for Interview Preparation Complete Software Testing Course [LIVE]
Mastering System Design: LLD to HLD Android Mastery with Kotlin [LIVE]
Tech Interview 101 - From DSA to System Design [LIVE]
DSA to Development [HYBRID]
Placement Preparation Crash Course [LIVE]
Clouds/Devops GATE
DevOps Engineering GATE CS & IT Test Series - 2025
AWS Solutions Architect Certification GATE DA Test Series 2025
Salesforce Certified Administrator Course GATE CS & IT Course - 2025
GATE DA Course 2025
GATE Rank Predictor