본문으로 건너뛰기

해밍 코드 계산기

위치 번호와 짝수 패리티 규칙에 따라 데이터를 인코딩하거나 해밍 코드워드 하나를 검사하세요.

해밍 코드 입력

브라우저에서 처리해요.

인코딩: 데이터 4비트 또는 11비트. 검사: 코드워드 7비트 또는 15비트. 회색 값은 계산 예시입니다. 그대로 계산할 수 있으며, 어느 입력란이든 선택하면 예시가 지워져 직접 값을 입력할 수 있습니다.

코드 결과

모드와 작업을 선택하고 비트를 입력한 뒤 계산하세요.

사용 방법

데이터가 4비트이면 Hamming(7,4), 11비트이면 Hamming(15,11)을 선택하세요. 인코딩은 패리티 비트를 삽입합니다. 검사는 수신된 7비트 또는 15비트 코드워드를 분석하며 오류가 하나라는 가정 아래 수정된 결과를 보여 줍니다.

위치와 패리티 규칙

표시된 비트열은 왼쪽부터 1번으로 셉니다. 2의 거듭제곱 위치가 패리티 위치입니다. 각 짝수 패리티 검사는 위치 번호를 이진수로 나타냈을 때 해당 패리티 비트가 포함된 위치를 검사합니다.

계산 예시

(7,4) 모드에서 데이터 1011을 입력하면 이 페이지의 왼쪽부터 세는 규칙에 따라 0110011이 나옵니다. 5번 비트를 뒤집으면 신드롬은 5가 되므로 단일 비트 수정으로 원래 코드워드와 데이터를 복원합니다.

제한 및 자주 묻는 질문

앞자리 0은 유지됩니다. 신드롬이 0이면 모든 검사를 통과했다는 뜻이며 모든 데이터 손상 가능성을 배제하지는 않습니다. 2비트 이상이 바뀌면 신드롬이 잘못된 위치를 가리킬 수 있습니다. SECDED와 시뮬레이션은 지원하지 않습니다.

신드롬 읽는 방법

실패한 각 패리티 검사의 위치 번호를 더하면 신드롬이 됩니다. 신드롬 0은 단일 비트 오류가 발견되지 않았다는 뜻입니다. 0이 아닌 값은 오류가 하나라는 가정에서만 뒤집어야 할 비트를 가리킵니다.

해밍 코드의 용도

해밍 코드는 패리티 배치를 배우거나 단일 오류를 수정하도록 설계된 시스템에서 유용합니다. 암호화, 압축, 임의 파일의 체크섬, 연속 오류 보호 기능은 아닙니다. 실제 시스템에서는 전체 패리티 비트(SECDED)나 더 강력한 오류 정정 코드를 추가할 수 있습니다.