03 Error Correcting Codes
03 Error Correcting Codes
https://www.tutorialspoint.com/error-correcting-codes-
hamming-codes#:~:text=Hamming%20code%20is%20a
%20block,redundant%20bits%20within%20the
%20message.
When bits are transmitted over the computer network, they are subject to get corrupted
due to interference and network problems. The corrupted bits leads to spurious data
being received by the receiver and are called errors.
Error-correcting codes (ECC) are a sequence of numbers generated by specific
algorithms fo
r detecting and removing errors in data that has been transmitted over noisy channels.
Error correcting codes ascertain the exact number of bits that has been corrupted and
the location of the corrupted bits, within the limitations in algorithm.
ECCs can be broadly categorized into two types −
Block codes − The message is divided into fixed-sized blocks of bits, to
which redundant bits are added for error detection or correction.
Convolutional codes − The message comprises of data streams of
arbitrary length and parity symbols are generated by the sliding application
of a Boolean function to the data stream.
Hamming Code
Hamming code is a block code that is capable of detecting up to two simultaneous bit
errors and correcting single-bit errors. It was developed by R.W. Hamming for error
correction.
In this coding method, the source encodes the message by inserting redundant bits
within the message. These redundant bits are extra bits that are generated and
inserted at specific positions in the message itself to enable error detection and
correction. When the destination receives this message, it performs recalculations to
detect errors and find the bit position that has error.