По поводу кода Хэмминга - ниже koyodza подробно упомянул, что достаточно добавить еще один отдельный бит контроля четности.
Возможно, дело в том, что "кодом хэмминга" все-таки называется именно код с кодовым расстоянием 3, а для большинства применений используются пополнения, дающие кодовое расстояние 4, то есть кроме иапрсления одной ошибки еще гарантированно детектирующие две.