ℹ️ Skipped - page is already crawled
| Filter | Status | Condition | Details |
|---|---|---|---|
| HTTP status | PASS | download_http_code = 200 | HTTP 200 |
| Age cutoff | PASS | download_stamp > now() - 6 MONTH | 0.1 months ago |
| History drop | PASS | isNull(history_drop_reason) | No drop reason |
| Spam/ban | PASS | fh_dont_index != 1 AND ml_spam_score = 0 | ml_spam_score=0 |
| Canonical | PASS | meta_canonical IS NULL OR = '' OR = src_unparsed | Not set |
| Property | Value |
|---|---|
| URL | https://www.electrical4u.com/error-detection-and-correction-codes/ |
| Last Crawled | 2026-04-09 14:22:20 (2 days ago) |
| First Indexed | 2017-03-08 01:53:51 (9 years ago) |
| HTTP Status Code | 200 |
| Meta Title | Error Detection and Correction Codes | Electrical4U |
| Meta Description | In both analog and digital systems, errors are common. When there are inputs and corresponding outputs, errors can occur. In digital systems like computers or communication setups, detecting and correcting these errors is crucial. The most common cause of errors is noise in the bit stream during transmission. If these… |
| Meta Canonical | null |
| Boilerpipe Text | Contents
💡
Key learnings:
Error Detection and Correction Definition
: Error detection and correction are processes to identify and fix errors in data transmission, ensuring accurate communication.
Parity Code
: Parity codes add an extra bit to data strings to detect errors, using even or odd parity methods.
Limitations of Parity Checks
: While useful for single-bit errors, parity checks can’t detect two-bit errors.
Repetition Code
: This method repeats data bits to detect and correct errors but can be inefficient with larger data.
Cyclic Redundancy Check (CRC)
: CRC is a powerful method that uses check bits to detect errors, ensuring data integrity in computer networks.
In both analog and digital systems, errors are common. When there are inputs and corresponding outputs, errors can occur. In digital systems like computers or communication setups, detecting and correcting these errors is crucial.
The most common cause of errors is noise in the bit stream during transmission. If these errors aren’t detected and corrected, digital systems can malfunction due to their sensitivity to even small errors in transmitted codes.
Various methods exist for
error detection and correction
, like adding extra bits called check bits or redundant bits. These bits don’t carry information but help detect and correct errors. This article will discuss different codes used for
error detection and correction
in digital systems.
Parity Code
A parity bit is added to bit strings during transmission to detect errors when the data is received. A parity code is simply an extra bit added to the data string. There are two types: even parity and odd parity.
Even parity occurs when the total number of 1’s in the data string is even after adding the extra bit. Odd parity occurs when the total number of 1’s is odd after adding the extra bit. For example, with an eight-bit
ASCII code
of 01000001.
Now if the added bit is 0 then the number will become 001000001. Here the total number of 1’s in the number is even so we get an even parity. Again if we add 1 to the number the number will become 101000001. Here the number of 1’s is 3 which is odd so, we have got an odd parity. Normally even parity is used and it has almost become a convention.
Now parity checks are capable of detecting a single bit error but it fails if there are two changes in the data and it is the biggest drawback of this system. That’s why there are several other codes to detect and correct more than one bit errors.
Repetition Code
In repetition code a single bit data is considered as a bit string of predetermined value and sent to the receiver, this is capable of detecting more than one data bit error. This can be illustrated with an example suppose the original number is 101.
Now during transmission all the numbers are repeated say 3 times, so the final transmitted number is 111000111. So when the number is received 1 bit error and two bit errors can be easily identified like it will be 011, 110 or 101. So it is a better way to detect and correct data but it gets highly inefficient as the number of repeated bits increase.
Cyclic Redundancy Check Code
Cyclic redundancy check (CRC) codes provide a reasonably high level of protection at low redundancy level. The cycle code for a given data word is generated as follows. At first we have to add certain number zeroes (the numbers are determined by the desired number of bit checks.
This new data bit sequence is then divided by a special binary word whose length equals n + 1, n being the number of check bits to be added. The remainder obtained as a result of modulo-2 division is then added to the dividend bit sequence to get the cyclic code.
The code word generated after the operation is completely divisible by the divisor which was used in the generation of the code. Thus, when we divide the received code with the same divisor, an error-free reception should lead to an all ‘0’ remainder.
A nonzero remainder is indicative of the presence of errors. The probability of
error detection
depends upon the number of check bits, n, used to construct the cyclic code. It is 100% for single-bit and two-bit errors. It is also 100 % when an odd number of bits are in error and the error bursts have a length less than n + 1. The probability of detection reduces to 1 – (1/2)
n−1
for an error burst length equal to n + 1, and to 1 – (1/2)
n
for an error burst length greater than n + 1. |
| Markdown | [Skip to content](https://www.electrical4u.com/error-detection-and-correction-codes/#content "Skip to content")
[](https://www.electrical4u.com/)
Menu
- [📝 MCQ](https://www.electrical4u.com/electrical-engineering-objective-questions-mcq/)
- [💡 Basics](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Basic Electrical](https://www.electrical4u.com/electrical-engineering-articles/basic-electrical/)
- [Circuit Theory](https://www.electrical4u.com/electrical-engineering-articles/circuit-theory/)
- [Electrical Laws](https://www.electrical4u.com/electrical-engineering-articles/electrical-laws/)
- [Engineering Materials](https://www.electrical4u.com/electrical-engineering-articles/engineering-material/)
- [Batteries](https://www.electrical4u.com/electrical-engineering-articles/batteries/)
- [Illumination](https://www.electrical4u.com/electrical-engineering-articles/illumination-engineering/)
- [Physics](https://www.electrical4u.com/electrical-engineering-articles/physics/)
- [⚡️ Power Systems](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Generation](https://www.electrical4u.com/electrical-engineering-articles/generation/)
- [Transmission](https://www.electrical4u.com/electrical-engineering-articles/transmission/)
- [Distribution](https://www.electrical4u.com/electrical-engineering-articles/distribution/)
- [Switchgear](https://www.electrical4u.com/electrical-engineering-articles/switchgear/)
- [Protection](https://www.electrical4u.com/electrical-engineering-articles/protection/)
- [Measurement](https://www.electrical4u.com/electrical-engineering-articles/measurement/)
- [Control Systems](https://www.electrical4u.com/electrical-engineering-articles/control-system/)
- [Utilities](https://www.electrical4u.com/electrical-engineering-articles/utilities/)
- [Electrical Safety](https://www.electrical4u.com/electrical-engineering-articles/safety/)
- [🤖 Machines](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Transformers](https://www.electrical4u.com/electrical-engineering-articles/transformer/)
- [Electric Motors](https://www.electrical4u.com/electrical-engineering-articles/electric-motor/)
- [Generators](https://www.electrical4u.com/electrical-engineering-articles/generator/)
- [Electrical Drives](https://www.electrical4u.com/electrical-engineering-articles/electrical-drives/)
- [📱 Electronics](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Electronic Devices](https://www.electrical4u.com/electrical-engineering-articles/electronics-devices/)
- [Signal Processing](https://www.electrical4u.com/electrical-engineering-articles/signal-processing/)
- [Power Electronics](https://www.electrical4u.com/electrical-engineering-articles/power-electronics/)
- [Digital Electronics](https://www.electrical4u.com/electrical-engineering-articles/digital-electronics/)
- [Biomedical](https://www.electrical4u.com/electrical-engineering-articles/biomedical-instrumentation/)
- [Subscribe ✉️](https://www.electrical4u.com/)
[](https://www.electrical4u.com/ "Electrical4U")
Menu
- [📝 MCQ](https://www.electrical4u.com/electrical-engineering-objective-questions-mcq/)
- [💡 Basics](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Basic Electrical](https://www.electrical4u.com/electrical-engineering-articles/basic-electrical/)
- [Circuit Theory](https://www.electrical4u.com/electrical-engineering-articles/circuit-theory/)
- [Electrical Laws](https://www.electrical4u.com/electrical-engineering-articles/electrical-laws/)
- [Engineering Materials](https://www.electrical4u.com/electrical-engineering-articles/engineering-material/)
- [Batteries](https://www.electrical4u.com/electrical-engineering-articles/batteries/)
- [Illumination](https://www.electrical4u.com/electrical-engineering-articles/illumination-engineering/)
- [Physics](https://www.electrical4u.com/electrical-engineering-articles/physics/)
- [⚡️ Power Systems](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Generation](https://www.electrical4u.com/electrical-engineering-articles/generation/)
- [Transmission](https://www.electrical4u.com/electrical-engineering-articles/transmission/)
- [Distribution](https://www.electrical4u.com/electrical-engineering-articles/distribution/)
- [Switchgear](https://www.electrical4u.com/electrical-engineering-articles/switchgear/)
- [Protection](https://www.electrical4u.com/electrical-engineering-articles/protection/)
- [Measurement](https://www.electrical4u.com/electrical-engineering-articles/measurement/)
- [Control Systems](https://www.electrical4u.com/electrical-engineering-articles/control-system/)
- [Utilities](https://www.electrical4u.com/electrical-engineering-articles/utilities/)
- [Electrical Safety](https://www.electrical4u.com/electrical-engineering-articles/safety/)
- [🤖 Machines](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Transformers](https://www.electrical4u.com/electrical-engineering-articles/transformer/)
- [Electric Motors](https://www.electrical4u.com/electrical-engineering-articles/electric-motor/)
- [Generators](https://www.electrical4u.com/electrical-engineering-articles/generator/)
- [Electrical Drives](https://www.electrical4u.com/electrical-engineering-articles/electrical-drives/)
- [📱 Electronics](https://www.electrical4u.com/error-detection-and-correction-codes/)
- [Electronic Devices](https://www.electrical4u.com/electrical-engineering-articles/electronics-devices/)
- [Signal Processing](https://www.electrical4u.com/electrical-engineering-articles/signal-processing/)
- [Power Electronics](https://www.electrical4u.com/electrical-engineering-articles/power-electronics/)
- [Digital Electronics](https://www.electrical4u.com/electrical-engineering-articles/digital-electronics/)
- [Biomedical](https://www.electrical4u.com/electrical-engineering-articles/biomedical-instrumentation/)
- [Subscribe ✉️](https://www.electrical4u.com/)
# Error Detection and Correction Codes
May 20, 2024
February 24, 2012
by [Electrical4U](https://www.electrical4u.com/author/electrical4u/ "View all posts by Electrical4U")

Contents
- [Parity Code](https://www.electrical4u.com/error-detection-and-correction-codes/#Parity-Code "Parity Code")
- [Repetition Code](https://www.electrical4u.com/error-detection-and-correction-codes/#Repetition-Code "Repetition Code")
- [Cyclic Redundancy Check Code](https://www.electrical4u.com/error-detection-and-correction-codes/#Cyclic-Redundancy-Check-Code "Cyclic Redundancy Check Code")
💡
Key learnings:
- **Error Detection and Correction Definition**: Error detection and correction are processes to identify and fix errors in data transmission, ensuring accurate communication.
- **Parity Code**: Parity codes add an extra bit to data strings to detect errors, using even or odd parity methods.
- **Limitations of Parity Checks**: While useful for single-bit errors, parity checks can’t detect two-bit errors.
- **Repetition Code**: This method repeats data bits to detect and correct errors but can be inefficient with larger data.
- **Cyclic Redundancy Check (CRC)**: CRC is a powerful method that uses check bits to detect errors, ensuring data integrity in computer networks.
In both analog and digital systems, errors are common. When there are inputs and corresponding outputs, errors can occur. In digital systems like computers or communication setups, detecting and correcting these errors is crucial.
The most common cause of errors is noise in the bit stream during transmission. If these errors aren’t detected and corrected, digital systems can malfunction due to their sensitivity to even small errors in transmitted codes.
Various methods exist for **error detection and correction**, like adding extra bits called check bits or redundant bits. These bits don’t carry information but help detect and correct errors. This article will discuss different codes used for **error detection and correction** in digital systems.
## Parity Code
A parity bit is added to bit strings during transmission to detect errors when the data is received. A parity code is simply an extra bit added to the data string. There are two types: even parity and odd parity.
Even parity occurs when the total number of 1’s in the data string is even after adding the extra bit. Odd parity occurs when the total number of 1’s is odd after adding the extra bit. For example, with an eight-bit [ASCII code](https://www.electrical4u.com/ascii-code/) of 01000001.
Now if the added bit is 0 then the number will become 001000001. Here the total number of 1’s in the number is even so we get an even parity. Again if we add 1 to the number the number will become 101000001. Here the number of 1’s is 3 which is odd so, we have got an odd parity. Normally even parity is used and it has almost become a convention.
Now parity checks are capable of detecting a single bit error but it fails if there are two changes in the data and it is the biggest drawback of this system. That’s why there are several other codes to detect and correct more than one bit errors.
## Repetition Code
In repetition code a single bit data is considered as a bit string of predetermined value and sent to the receiver, this is capable of detecting more than one data bit error. This can be illustrated with an example suppose the original number is 101.
Now during transmission all the numbers are repeated say 3 times, so the final transmitted number is 111000111. So when the number is received 1 bit error and two bit errors can be easily identified like it will be 011, 110 or 101. So it is a better way to detect and correct data but it gets highly inefficient as the number of repeated bits increase.
## Cyclic Redundancy Check Code
Cyclic redundancy check (CRC) codes provide a reasonably high level of protection at low redundancy level. The cycle code for a given data word is generated as follows. At first we have to add certain number zeroes (the numbers are determined by the desired number of bit checks.
This new data bit sequence is then divided by a special binary word whose length equals n + 1, n being the number of check bits to be added. The remainder obtained as a result of modulo-2 division is then added to the dividend bit sequence to get the cyclic code.
The code word generated after the operation is completely divisible by the divisor which was used in the generation of the code. Thus, when we divide the received code with the same divisor, an error-free reception should lead to an all ‘0’ remainder.
A nonzero remainder is indicative of the presence of errors. The probability of **error detection** depends upon the number of check bits, n, used to construct the cyclic code. It is 100% for single-bit and two-bit errors. It is also 100 % when an odd number of bits are in error and the error bursts have a length less than n + 1. The probability of detection reduces to 1 – (1/2)n−1 for an error burst length equal to n + 1, and to 1 – (1/2)n for an error burst length greater than n + 1.

About Electrical4U
Electrical4U is dedicated to the teaching and sharing of all things related to electrical and electronics engineering.
[...](https://www.electrical4u.com/author/electrical4u/ "Read more")
### Leave a Comment [Cancel reply](https://www.electrical4u.com/error-detection-and-correction-codes/#respond)
Recent Posts
[Electric Current: What is it? (Formula, Units, AC vs DC)](https://www.electrical4u.com/electric-current-and-theory-of-electricity/)
[Voltage: What is it? (Definition, Formula And How To Measure Potential Difference)](https://www.electrical4u.com/voltage-or-electric-potential-difference/)
[Programmable Logic Controllers (PLCs): Basics, Types & Applications](https://www.electrical4u.com/programmable-logic-controllers/)
[Diode: Definition, Symbol, and Types of Diodes](https://www.electrical4u.com/diode-working-principle-and-types-of-diode/)
[Thermistor: Definition, Uses & How They Work](https://www.electrical4u.com/thermistor/)
[Half Wave Rectifier Circuit Diagram & Working Principle](https://www.electrical4u.com/half-wave-rectifiers/)
[Lenz’s Law of Electromagnetic Induction: Definition & Formula](https://www.electrical4u.com/lenz-law-of-electromagnetic-induction/)
[](https://www.electrical4u.com/best-electrical-engineering-books/)
[](https://www.electrical4u.com/electrical-engineering-app/)
Please feel free to [contact us](https://www.electrical4u.com/about/) if you’d like to request a specific topic. [Click here](https://www.electrical4u.com/privacy-policy/) to see our privacy policy.
We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites. [Full disclaimer here](https://www.electrical4u.com/disclaimer/).
© 2024 [Electrical4U](https://www.electrical4u.com/) |
| Readable Markdown | Contents
💡
Key learnings:
- **Error Detection and Correction Definition**: Error detection and correction are processes to identify and fix errors in data transmission, ensuring accurate communication.
- **Parity Code**: Parity codes add an extra bit to data strings to detect errors, using even or odd parity methods.
- **Limitations of Parity Checks**: While useful for single-bit errors, parity checks can’t detect two-bit errors.
- **Repetition Code**: This method repeats data bits to detect and correct errors but can be inefficient with larger data.
- **Cyclic Redundancy Check (CRC)**: CRC is a powerful method that uses check bits to detect errors, ensuring data integrity in computer networks.
In both analog and digital systems, errors are common. When there are inputs and corresponding outputs, errors can occur. In digital systems like computers or communication setups, detecting and correcting these errors is crucial.
The most common cause of errors is noise in the bit stream during transmission. If these errors aren’t detected and corrected, digital systems can malfunction due to their sensitivity to even small errors in transmitted codes.
Various methods exist for **error detection and correction**, like adding extra bits called check bits or redundant bits. These bits don’t carry information but help detect and correct errors. This article will discuss different codes used for **error detection and correction** in digital systems.
## Parity Code
A parity bit is added to bit strings during transmission to detect errors when the data is received. A parity code is simply an extra bit added to the data string. There are two types: even parity and odd parity.
Even parity occurs when the total number of 1’s in the data string is even after adding the extra bit. Odd parity occurs when the total number of 1’s is odd after adding the extra bit. For example, with an eight-bit [ASCII code](https://www.electrical4u.com/ascii-code/) of 01000001.
Now if the added bit is 0 then the number will become 001000001. Here the total number of 1’s in the number is even so we get an even parity. Again if we add 1 to the number the number will become 101000001. Here the number of 1’s is 3 which is odd so, we have got an odd parity. Normally even parity is used and it has almost become a convention.
Now parity checks are capable of detecting a single bit error but it fails if there are two changes in the data and it is the biggest drawback of this system. That’s why there are several other codes to detect and correct more than one bit errors.
## Repetition Code
In repetition code a single bit data is considered as a bit string of predetermined value and sent to the receiver, this is capable of detecting more than one data bit error. This can be illustrated with an example suppose the original number is 101.
Now during transmission all the numbers are repeated say 3 times, so the final transmitted number is 111000111. So when the number is received 1 bit error and two bit errors can be easily identified like it will be 011, 110 or 101. So it is a better way to detect and correct data but it gets highly inefficient as the number of repeated bits increase.
## Cyclic Redundancy Check Code
Cyclic redundancy check (CRC) codes provide a reasonably high level of protection at low redundancy level. The cycle code for a given data word is generated as follows. At first we have to add certain number zeroes (the numbers are determined by the desired number of bit checks.
This new data bit sequence is then divided by a special binary word whose length equals n + 1, n being the number of check bits to be added. The remainder obtained as a result of modulo-2 division is then added to the dividend bit sequence to get the cyclic code.
The code word generated after the operation is completely divisible by the divisor which was used in the generation of the code. Thus, when we divide the received code with the same divisor, an error-free reception should lead to an all ‘0’ remainder.
A nonzero remainder is indicative of the presence of errors. The probability of **error detection** depends upon the number of check bits, n, used to construct the cyclic code. It is 100% for single-bit and two-bit errors. It is also 100 % when an odd number of bits are in error and the error bursts have a length less than n + 1. The probability of detection reduces to 1 – (1/2)n−1 for an error burst length equal to n + 1, and to 1 – (1/2)n for an error burst length greater than n + 1. |
| Shard | 192 (laksa) |
| Root Hash | 15046430122061128792 |
| Unparsed URL | com,electrical4u!www,/error-detection-and-correction-codes/ s443 |