본문 바로가기
기초 CS 정리

패리티 비트 / 해밍 코드

by 쿠리의일상 2023. 1. 27.

패리티 비트

  • 정보 전달 과정에서 오류가 생겼는지 검사하기 위해 추가하는 비트
  • 오류를 수정하진 않고 찾기만 한다.
  • 전송하고자 하는 데이터의 각 문자에 1비트를 더하여 전송한다.

 

  • 전체 비트에서 짝수 혹은 홀수에 맞도록 비트를 정한다.
  • ex. 짝수 패리티일 때 7비트 데이터가 1010001라면, 1이 3개이므로 짝수로 맞춰주기 위해 1을 하나 더해줌 → 패리티비트 1을 맨 앞에 추가하여 11010001

 

해밍 코드

  • 데이터 전송 시 1비트의 에러를 정정할 수 있는 자기 오류 정정 코드를 의미
  • 패리티비트를 보고 1비트에 대한 오류를 정정할 곳을 찾아 수정할 수 있다.

 

  • 패리티 비트는 오류를 검출하기만 할 뿐 수정하지는 않기 때문에 수정에는 해밍 코드를 활용한다.
  • ex. 짝수 패리티의 해밍 코드가 0011011일 때 오류가 수정된 코드는,
    • 1, 3, 5, 7번째 비트 확인 후 0101로 짝수이므로 0
    • 2, 3, 6, 7번째 비트 확인 후 0111로 홀수이므로 1
    • 4, 5, 6, 7번째 비트 확인 후 1011로 홀수이므로 1
    • 역순으로 패리티비트 110을 도출하여 10진법으로 바꿔주면 6, 6번째 비트를 수정하면 된다.
    • 따라서 정답은 00110’0’1이다.

'기초 CS 정리' 카테고리의 다른 글

운영체제  (0) 2023.01.27
폰 노이만 구조  (0) 2023.01.27
고정 소수점/ 부동 소수점  (0) 2023.01.26
캐시 메모리 Cache Memory  (0) 2023.01.25
컴퓨터의 구성  (0) 2023.01.25