Background: Channel coding (also called error-correcting or error-control coding) adds structured redundancy to data so that a receiver can detect and correct transmission errors without retransmission. Hamming codes are a classic family of single-error-correcting (n,k) linear block codes — n = total codeword bits, k = message (data) bits, r = n−k = parity bits — that place parity-check bits at power-of-two positions (1, 2, 4, ...), with each parity bit covering a specific subset of positions determined by binary decomposition. At the receiver, recomputing these parity checks produces a "syndrome" whose value, read as a binary number, directly points to the position of any single bit error — letting it be corrected without any retransmission.
Description of This Web Application: Choose a codeword length of 7, 15, or 31 bits, enter your own data bits, and step through a five-stage wizard — codeword structure, data placement, parity groups, parity value computation, and the final assembled codeword — that shows exactly how each parity bit gets its value. Then use the error-injection panel to flip any single bit and watch the syndrome calculation locate and automatically correct it. By the end, you should understand why parity bits are placed at power-of-two positions, how the syndrome encodes the error location, and how much redundancy (code rate k/n) each code size costs for its error-correcting power.