Decode a clean codeword — Hamming code
coresyndrome 0 means no single error
Answer
syndrome = 0 — no error detected
Why this example is worth doing
An uncorrupted codeword gives a syndrome of zero, and the page is careful about what that does and does not prove. It means no single-bit error occurred; it does not mean the data is correct, because a two-bit error can produce a zero syndrome or, worse, a non-zero one pointing at an innocent position. That limitation is exactly what the SECDED extension addresses.
Try your own input in the Hamming code. Encode, inject an error, and watch the syndrome point straight at the flipped bit.
How the answer is reached
Hamming (7,4) decode
Received0110011Highlighted cells are parity bits.
| Check | Parity bit | Positions checked | Result |
|---|---|---|---|
| s0 | p1 | 1, 3, 5, 7 | 0 (passes) |
| s1 | p2 | 2, 3, 6, 7 | 0 (passes) |
| s2 | p4 | 4, 5, 6, 7 | 0 (passes) |
p1 check0 ⊕ 1 ⊕ 0 ⊕ 1 = 0— checks positions 1, 3, 5, 7
p2 check1 ⊕ 1 ⊕ 1 ⊕ 1 = 0— checks positions 2, 3, 6, 7
p4 check0 ⊕ 0 ⊕ 1 ⊕ 1 = 0— checks positions 4, 5, 6, 7
Syndrome S000₂ = 0— read with s₀ as the least significant bit
Every check passes and the syndrome is 0: no error detected.
Data word1011
A single-error-correcting code cannot tell a double error from a single error; the syndrome then points at an innocent bit.
Source: R. W. Hamming, Bell System Technical Journal 29(2):147–160 (1950)