수신자는 송신자로부터, 어떤 패리티 비트 규칙을 사용했는지 공유를 받고, 수신자는 수신받은 데이터가 공유받은 패리티 비트 규칙을 만족하는지 확인해 오류 검출
짝수 패리티일 때 7비트 데이터가 1010001
이다.
1이 총 3개이므로, 짝수로 맞춰주기 위해 1을 더해야 함
답 : 11010001
(규칙 : 맨앞이 패리티비트)
데이터 전송시, 1비트의 에러를 정정할 수 있는 자기 오류 정정 코드
패리티 비트 사용 시, 수신자는 오류 검출 및 데이터 재송신만 가능한 단점 존재
해밍코드 사용시, 수신자는 오류 검출 + 오류 수정 가능
2 bit 오류를 검출할 수 있고, 1 bit의 오류를 수정 가능
데이터 비트 외에 오류 검출 및 교정을 위한 잉여 비트 필요
해밍 코드 중에서 1,2,4,8,16, … , 번째 비트는 오류 검출을 위한 패리티 비트
패리티 규칙이 정해진 후 → n번째 패리티 비트는 n번째 비트에서 시작하여 n비트 만큼을 포함하고, n비트씩 건너뛴 비트들을 대상으로, 패리티 비트를 결정할 수 있다.
짝수 패리티의 해밍 코드가 0011011
일때 오류가 수정된 코드는?
- 1, 3, 5, 7번째 비트 확인 : 0101로 짝수이므로 '0'
- 2, 3, 6, 7번째 비트 확인 : 0111로 홀수이므로 '1'
- 4, 5, 6, 7번째 비트 확인 : 1011로 홀수이므로 '1'
역순으로 ‘110’ 도출했다. 110(2진법) = 6(10진법), 6번째 비트를 수정하여 0011001
이 정답이다.
해밍 코드 변환 시, 추가할 패리티 비트 개수
(d = 데이터 비트 수, p = 패리티 비트 수 ) ex,