해밍코드 오류검출 예제

이 메서드는 버스트 오류 및 단일 비트 오류를 쉽게 감지할 수 있으며 동일한 수직 슬라이스에서 발생한 2비트 오류를 감지하지 못합니다. 참고: 코드word에 모두 0(예: 0000000)이 있는 경우 Hamming 코드에 오류가 없습니다. 비트는 소수점 표현이 6인 0110으로 이진 번호를 지정합니다. 따라서 비트 6에는 오류가 포함되어 있습니다. 오류를 수정하기 위해 6비트가 1에서 0으로 변경됩니다. 5개 중 2개 코드는 정확히 3개의 0과 2개의 1로 구성된 5개의 비트를 사용하는 인코딩 체계입니다. 이렇게 하면 숫자 0-9를 나타낼 수 있는 10가지 조합이 제공됩니다. 이 스키마는 모든 단일 비트 오류, 모든 홀수 번호 비트 오류 및 일부 짝수 번호 비트 오류(예: 두 1비트의 뒤집기)를 검색할 수 있습니다. 그러나 여전히 이러한 오류를 수정할 수 없습니다. 네 번째 행을 추가하면 모든 코드워드 비트(데이터 및 패리티)의 합계를 네 번째 패리티 비트로 효과적으로 계산합니다.

오류 감지 및 수정 – 위의 예에서 6 비트가 데이터 전송 중에 0에서 1로 변경된 다음 이진 번호에 새로운 패리티 값을 제공한다고 가정합니다: 컨볼루션 코드 – 메시지는 임의의 길이와 패리티의 데이터 스트림으로 구성됩니다. 기호는 부울 함수를 데이터 스트림에 슬라이딩 응용 프로그램에 의해 생성됩니다. Hamming은 한 번에 두 가지 문제에 관심이 있었습니다: 가능한 한 거리를 늘리는 동시에 코드 속도를 가능한 한 많이 증가시다. 1940년대에 그는 기존 코드가 크게 개선된 여러 인코딩 체계를 개발했습니다. 그의 모든 시스템의 핵심은 패리티 비트가 겹치도록 하여 데이터뿐만 아니라 서로를 확인하는 것이었습니다. 체크섬은 패리티 비트와 유사하지만 합계의 비트 수는 패리티보다 크고 결과는 항상 0으로 제한됩니다. 즉, 체크섬이 0이면 오류가 감지됩니다. 메시지의 체크섬은 특정 길이의 코드 단어의 산술 합계입니다. 합계는 1의 칭찬을 통해 명시되며 실제 코드 단어의 코드 확장으로 저장되거나 전송됩니다.

수신기에서 새 체크섬은 송신기로부터 비트 시퀀스를 수신하여 계산됩니다. Hamming은 2/5를 포함한 기존 코딩 체계를 연구하고 개념을 일반화했습니다. 우선, 그는 블록의 데이터 비트 수와 오류 수정 비트를 포함하여 시스템을 설명하는 명명가 개발되었습니다. 예를 들어 패리티는 모든 데이터 단어에 대한 단일 비트를 포함하므로 ASCII 단어를 7비트로 가정하면 Hamming은 이를 (8,7) 코드로 설명하고 총 8비트는 7비트이며 그 중 7개는 데이터입니다. 반복 예제는 (3,1) 동일한 논리를 따르는 것입니다. 코드 속도는 반복 예제인 1/3의 경우 첫 번째 숫자로 나눈 두 번째 숫자입니다. 이 확장된 Hamming 코드는 SECDED(단일 오류 수정, 이중 오류 감지)로 알려진 컴퓨터 메모리 시스템에서 널리 사용됩니다. 특히 인기가 있는 것은 (72,64) 코드, 잘린(127,120) 해밍 코드와 (9,8) 패리티 코드와 동일한 공간 오버헤드를 가지는 추가 패리티 비트입니다.

길이 n – 1의 버스트 오류의 경우 오류 감지 확률은 100 %입니다. 알파벳과 숫자로 이진 데이터를 나타내기 위해 우리는 가문 코드를 사용합니다. 데이터 오류로 인해 중요/보안 데이터가 손실됩니다. 데이터가 한 비트라도 전체 시스템의 성능에 영향을 줄 수 있습니다. 일반적으로 디지털 시스템의 데이터 전송은 `비트 – 전송`의 형태로 될 것입니다. 이 경우 데이터 오류는 0 및 1 의 위치에서 변경될 수 있습니다.