짝수 패리티 비트 계산기 - 이진 오류 검출
이진 데이터 전송용 짝수 패리티 비트를 생성하고, 수신한 이진 문자열의 1비트 오류를 즉시 검증합니다.
이진 데이터를 입력해 짝수 패리티 비트와 전송 문자열을 계산하거나, 수신 데이터를 붙여 넣어 전송 오류를 확인하세요.
짝수 패리티 비트 계산기 - 이진 오류 검출
이진 데이터 전송용 짝수 패리티 비트를 생성하고, 수신한 이진 문자열의 1비트 오류를 즉시 검증합니다.
짝수 패리티 비트 계산기 소개
패리티 검사는 디지털 통신에서 가장 오래되었고 널리 사용되는 오류 검출 방식 중 하나입니다. 이진 데이터가 시리얼 케이블, 메모리 버스, 네트워크 링크, 저장 매체처럼 잡음이 있는 경로를 지나면 전기적 간섭, 우주선, 하드웨어 결함 때문에 개별 비트가 손상될 수 있습니다. 패리티 비트는 데이터 블록 뒤에 붙이는 추가 비트로, 수신 측이 손상 여부를 확인할 수 있게 해 줍니다.
짝수 패리티는 데이터 비트와 패리티 비트를 합친 전체 순서에서 1의 총개수가 항상 짝수가 되도록 하는 방식입니다. 규칙은 간단합니다. 원래 데이터의 1 개수를 세어 이미 짝수라면 패리티 비트를 0으로, 홀수라면 1로 설정해 전체를 짝수로 만듭니다. 수학적으로는 패리티 비트가 모든 데이터 비트의 XOR(배타적 논리합)입니다. 하드웨어 회로는 이 연산을 나노초 단위로 처리할 수 있습니다.
구체적인 예를 들어 보겠습니다. 4비트 데이터 1010을 전송한다고 합시다. 이 단어에는 1이 정확히 2개 있어 이미 짝수이므로 짝수 패리티 비트는 0입니다. 완성된 전송 문자열은 10100입니다. 수신 측에서는 다섯 비트를 모두 XOR 합니다: 1 ⊕ 0 ⊕ 1 ⊕ 0 ⊕ 0 = 0. 결과가 0이면 1의 총개수가 짝수이므로 오류가 표시되지 않습니다. 전송 중 한 비트가 손상되어 문자열이 11100으로 도착했다고 가정하면, 수신 측 XOR는 1 ⊕ 1 ⊕ 1 ⊕ 0 ⊕ 0 = 1 입니다. 0이 아닌 XOR 결과는 1의 총개수가 홀수라는 뜻이며, 다섯 비트 프레임 어딘가에서 오류가 발생했음을 나타냅니다.
짝수 패리티와 홀수 패리티의 차이는 목표 총개수뿐입니다. 짝수는 총합이 짝수가 되도록 하고, 홀수는 총합이 홀수가 되도록 합니다. 두 방식 모두 단일 비트 오류는 100% 신뢰도로 검출할 수 있습니다. 한 비트를 뒤집으면 패리티가 짝수에서 홀수로, 또는 그 반대로 바뀌기 때문입니다. 하지만 동시에 짝수 개의 비트가 뒤집히면 두 번의 반전이 서로 상쇄되어 패리티가 변하지 않으므로 둘 다 조용히 실패합니다. 여러 비트 오류를 처리해야 하는 경우에는 CRC(순환 중복 검사), 해밍 코드, Reed-Solomon 코드 같은 더 정교한 코드를 사용합니다.
모든 데이터 비트가 0일 때는 짝수 패리티가 홀수 패리티보다 선호되는 경우가 많습니다. 홀수 패리티에서는 모든 0 데이터 단어에 항상 1의 패리티 비트가 붙어 전송값이 0이 아니게 됩니다. 짝수 패리티에서는 모든 0 데이터 단어가 그대로 모든 0 전송이 되어, 일부 초기화나 핸드셰이크 프로토콜에서 유용할 수 있습니다. 짝수와 홀수 패리티 중 무엇을 쓸지는 보통 적용하는 통신 표준이 정합니다.
짝수 패리티의 실제 활용 예로는 UART 시리얼 통신(패리티 모드를 설정할 수 있음), 바이트마다 추가 패리티 비트를 저장하던 구형 메모리 시스템, 일부 네트워크 프레이밍 프로토콜이 있습니다. 현대의 고속 링크는 더 강력한 오류 검출 및 정정 코드를 주로 사용하지만, 짝수 패리티는 자원이 제한된 임베디드 시스템에서도 여전히 가치가 있으며, 컴퓨터 과학과 디지털 전자공학 교육에서 다루는 기본 개념이기도 합니다.
이 계산기는 짝수 패리티 계산의 모든 단계를 자동화합니다. 입력이 순수한 이진수인지 검증하고, 1의 개수를 세고, 올바른 짝수 패리티 비트를 결정한 뒤, 전체 전송 문자열을 출력합니다. 선택적 검증 필드에는 수신 문자열(패리티 비트 포함)을 붙여 넣어 짝수 패리티 검사가 통과하는지 즉시 확인할 수 있습니다.
짝수 패리티 비트 예시
아래 표는 여러 이진 입력에 대해 짝수 패리티 비트가 어떻게 계산되는지 보여 줍니다.
| 이진 데이터 | 패리티 비트 | 전송 문자열 |
|---|---|---|
| 1010 | 0 | 1이 2개(짝수) → 패리티 비트 = 0. 전송: 10100 |
| 1110 | 1 | 1이 3개(홀수) → 패리티 비트 = 1. 전송: 11101 |
| 11001100 | 0 | 1이 4개(짝수) → 패리티 비트 = 0. 전송: 110011000 |
| 10110100 | 0 | 1이 4개(짝수) → 패리티 비트 = 0. 전송: 101101000 |
| 11111111 | 0 | 1이 8개(짝수) → 패리티 비트 = 0. 전송: 111111110 |
짝수 패리티 비트 계산기 사용 방법
- 전송할 이진 문자열을 이진 데이터 필드에 입력하세요. 0과 1만 사용하고 공백이나 구분자는 넣지 마세요.
- 짝수 패리티 비트 계산을 클릭하면 1의 개수, 필요한 짝수 패리티 비트, 전체 전송 문자열을 볼 수 있습니다.
- 전송 문자열(원래 데이터와 추가된 패리티 비트)을 복사해 수신 측으로 보내세요.
- 수신 데이터를 검증하려면 패리티 비트를 포함한 전체 수신 문자열을 수신 데이터 필드에 붙여 넣고 계산을 클릭하세요. 1의 총개수가 짝수인지 확인합니다.
- 초기화를 클릭하면 모든 필드가 지워지고 새 계산을 시작할 수 있습니다.
짝수 패리티 비트 계산기 FAQ
짝수 패리티란 무엇인가요?
짝수 패리티는 이진 데이터 뒤에 패리티 비트를 추가해 결합된 문자열(데이터 + 패리티 비트) 전체의 1 개수가 항상 짝수가 되도록 하는 오류 검출 방식입니다. 데이터에 이미 짝수 개의 1이 있으면 패리티 비트는 0, 홀수 개면 1이 되어 전체를 짝수로 만듭니다.
짝수 패리티 비트는 어떻게 계산하나요?
짝수 패리티 비트는 모든 데이터 비트의 XOR와 같습니다. XOR는 1의 개수가 홀수면 1, 짝수면 0을 반환합니다. 예를 들어 1010(1이 2개, 이미 짝수)에서는 XOR가 0이므로 패리티 비트도 0입니다. 1110(1이 3개, 홀수)에서는 XOR가 1이므로 패리티 비트도 1입니다.
짝수 패리티와 홀수 패리티의 차이는 무엇인가요?
짝수 패리티는 1의 총개수를 짝수로 만들고, 홀수 패리티는 홀수로 만듭니다. 둘 다 단일 비트 오류를 검출할 수 있습니다. 실무상 가장 큰 차이는 홀수 패리티가 모든 0 데이터 단어에서도 패리티 비트를 비 0으로 만들어, 0에 고정된 결함을 찾는 데 도움이 된다는 점입니다. 짝수 패리티는 0값 패딩 바이트로 일관된 프레이밍이 필요한 프로토콜에서 선호될 수 있습니다.
짝수 패리티가 모든 오류를 검출하나요?
아니요. 짝수 패리티는 한 비트를 뒤집으면 짝수가 홀수로 바뀌므로 단일 비트 오류는 확실히 검출합니다. 하지만 정확히 두 비트가 동시에 뒤집히면 패리티가 여전히 짝수이므로 오류가 감지되지 않습니다. 더 강력한 보호가 필요하면 CRC, 해밍 코드, Reed-Solomon 오류 정정 코드를 사용하세요.
짝수 패리티는 실제로 어디에 쓰이나요?
짝수 패리티는 UART 시리얼 통신(패리티 모드를 설정할 수 있음), 일부 구형 메모리 모듈, 특정 네트워크 프레이밍 프로토콜에서 사용됩니다. 또한 최소한의 수학적 복잡성으로 오류 검출을 설명할 수 있어 컴퓨터 과학과 디지털 전자공학 수업의 기본 개념으로도 다뤄집니다.
검증 체크는 어떻게 동작하나요?
수신 데이터를 검증하려면 원래 데이터와 추가된 패리티 비트를 모두 포함한 전체 수신 문자열을 수신 데이터 필드에 입력하세요. 계산기는 수신 문자열의 1 총개수를 셉니다. 개수가 짝수이면 짝수 패리티가 만족되어 오류가 표시되지 않고, 홀수이면 단일 비트 오류(또는 홀수 개의 오류)가 감지된 것입니다.