Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Working with golden data: 00001010 Golden data: 00001010 Codeword: 0100 00001010 What next? flipbit 1 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00001010 Golden Codeword: 0100 00001010 Corrupted Codeword: 0100 00001000 Recomputed Checkbits: 1110 using data 00001000 Syndrome: 0100 XOR 1110 Syndrome: 1010 Syndrome matches name of bitposition 1 Databits was corrupt at that bit position Recovered data: 00001010 MATCHES! IT WORKS! WOOHOO! What next? flipbit 2 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00001010 Golden Codeword: 0100 00001010 Corrupted Codeword: 0100 00001110 Recomputed Checkbits: 0010 using data 00001110 Syndrome: 0100 XOR 0010 Syndrome: 0110 Syndrome matches name of bitposition 2 Databits was corrupt at that bit position Recovered data: 00001010 MATCHES! IT WORKS! WOOHOO! What next? flipbit 3 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00001010 Golden Codeword: 0100 00001010 Corrupted Codeword: 0100 00000010 Recomputed Checkbits: 1010 using data 00000010 Syndrome: 0100 XOR 1010 Syndrome: 1110 Syndrome matches name of bitposition 3 Databits was corrupt at that bit position Recovered data: 00001010 MATCHES! IT WORKS! WOOHOO! What next? flipbit 4 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00001010 Golden Codeword: 0100 00001010 Corrupted Codeword: 0100 00011010 Recomputed Checkbits: 1101 using data 00011010 Syndrome: 0100 XOR 1101 Syndrome: 1001 Syndrome matches name of bitposition 4 Databits was corrupt at that bit position Recovered data: 00001010 MATCHES! IT WORKS! WOOHOO! What next? flipbit 9 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00001010 Golden Codeword: 0100 00001010 Corrupted Codeword: 0110 00001010 Recomputed Checkbits: 0100 using data 00001010 Syndrome: 0110 XOR 0100 Syndrome: 0010 Syndrome does not match a checkbit name. Checkbits were corrupted. Databits are clean What next? flipbit 10 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00001010 Golden Codeword: 0100 00001010 Corrupted Codeword: 0000 00001010 Recomputed Checkbits: 0100 using data 00001010 Syndrome: 0000 XOR 0100 Syndrome: 0100 Syndrome does not match a checkbit name. Checkbits were corrupted. Databits are clean What next? set 43 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00101011 Codeword: 1101 00101011 What next? flipbit 0 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00101011 Golden Codeword: 1101 00101011 Corrupted Codeword: 1101 00101010 Recomputed Checkbits: 0001 using data 00101010 Syndrome: 1101 XOR 0001 Syndrome: 1100 Syndrome matches name of bitposition 0 Databits was corrupt at that bit position Recovered data: 00101011 MATCHES! IT WORKS! WOOHOO! What next? flipbit 1 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00101011 Golden Codeword: 1101 00101011 Corrupted Codeword: 1101 00101001 Recomputed Checkbits: 0111 using data 00101001 Syndrome: 1101 XOR 0111 Syndrome: 1010 Syndrome matches name of bitposition 1 Databits was corrupt at that bit position Recovered data: 00101011 MATCHES! IT WORKS! WOOHOO! What next? flipbit 2 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00101011 Golden Codeword: 1101 00101011 Corrupted Codeword: 1101 00101111 Recomputed Checkbits: 1011 using data 00101111 Syndrome: 1101 XOR 1011 Syndrome: 0110 Syndrome matches name of bitposition 2 Databits was corrupt at that bit position Recovered data: 00101011 MATCHES! IT WORKS! WOOHOO! What next? flipbit 3 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00101011 Golden Codeword: 1101 00101011 Corrupted Codeword: 1101 00100011 Recomputed Checkbits: 0011 using data 00100011 Syndrome: 1101 XOR 0011 Syndrome: 1110 Syndrome matches name of bitposition 3 Databits was corrupt at that bit position Recovered data: 00101011 MATCHES! IT WORKS! WOOHOO! What next? flipbit 8 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00101011 Golden Codeword: 1101 00101011 Corrupted Codeword: 1100 00101011 Recomputed Checkbits: 1101 using data 00101011 Syndrome: 1100 XOR 1101 Syndrome: 0001 Syndrome does not match a checkbit name. Checkbits were corrupted. Databits are clean What next? set 0 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00000000 Codeword: 0000 00000000 What next? flipbit 0 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00000000 Golden Codeword: 0000 00000000 Corrupted Codeword: 0000 00000001 Recomputed Checkbits: 1100 using data 00000001 Syndrome: 0000 XOR 1100 Syndrome: 1100 Syndrome matches name of bitposition 0 Databits was corrupt at that bit position Recovered data: 00000000 MATCHES! IT WORKS! WOOHOO! What next? flipbit 1 Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011 Golden data: 00000000 Golden Codeword: 0000 00000000 Corrupted Codeword: 0000 00000010 Recomputed Checkbits: 1010 using data 00000010 Syndrome: 0000 XOR 1010 Syndrome: 1010 Syndrome matches name of bitposition 1 Databits was corrupt at that bit position Recovered data: 00000000 MATCHES! IT WORKS! WOOHOO! What next? stop Checkbit names bit-position: 0 name 1100 bit-position: 1 name 1010 bit-position: 2 name 0110 bit-position: 3 name 1110 bit-position: 4 name 1001 bit-position: 5 name 0101 bit-position: 6 name 1101 bit-position: 7 name 0011