Coding efficiency

The efficiency of a code is a measure of how well errors can be detected or corrected versus the bit overhead required to implement the code. In the ball analogy, colour coding the balls may be very effective, but adding colour may introduce a very high overhead of data, and perhaps changing the ball shape may provide the same error detection or correction capability, but use fewer additional data bits. This would therefore be classed as a more efficient coding scheme.

Certain code types are better at detecting errors than correcting them, and these are thus well suited to ARQ schemes where we need to know an error has occurred, and our corrective action is to request a retransmision. Equally, there are codes that are best suited for correcting errors and these would be used where no retransmission was possible. A good example for this type of code would be paging devices, or missile control systems!