본문 바로가기

컴퓨터/컴퓨터 시험

Excess-3 코드(3초과 코드)

728x90

Excess-3 코드(또는 XS-3 코드)는 십진수를 표현하기 위한 BCD(Binary-Coded Decimal)의 변형된 형태로, 각 십진 숫자에 3을 더한 후 이를 4비트 이진수로 변환한 코드입니다.

이 코드는 일반적인 BCD와는 다른 특성을 가지며, 특히 오류 검출 및 보정에 유리한 성질을 가지고 있어 디지털 시스템에서 활용됩니다.


Excess-3 코드의 생성 방법

  1. 십진수에 3을 더한다.
    • 예: 십진수 55 + 3 = 8.
  2. 결과를 4비트 이진수로 변환한다.
    • 예: 8 → 1000.

Excess-3 코드 표

다음은 십진수(Decimal), 일반적인 BCD 코드, 그리고 Excess-3 코드의 비교 표입니다:

십진수 BCD 코드 Excess-3 코드
0 0000 0011
1 0001 0100
2 0010 0101
3 0011 0110
4 0100 0111
5 0101 1000
6 0110 1001
7 0111 1010
8 1000 1011
9 1001 1100

Excess-3 코드의 장점

  1. 오류 검출이 용이
    • Excess-3 코드는 비자연스러운 비트 조합(예: 0000, 0001, 0010)을 배제하여 특정 오류를 쉽게 감지할 수 있습니다.
  2. 보정이 간단
    • 보정 회로가 간단하게 설계 가능하며, 십진수 변환에서 추가적인 연산 없이 적용 가능.
  3. 9의 보수 연산
    • Excess-3 코드는 9의 보수를 쉽게 계산할 수 있습니다.
      • 예: 5의 Excess-3 코드(1000) → 비트를 반전(0111)하면 4의 Excess-3 코드.

Excess-3 코드의 단점

  1. 비효율성
    • 기존 BCD와 비교해도 저장 공간이 크게 차이나지는 않지만, 여전히 메모리 효율은 낮습니다.
  2. 연산 복잡성
    • Arithmetic 연산을 수행할 때 십진수 변환을 거쳐야 하므로 BCD보다 연산이 조금 더 복잡할 수 있습니다.

Excess-3 코드의 활용 사례

  1. 디지털 계산기
    • 십진 연산을 처리할 때 Excess-3 코드를 사용하면 연산 보정이 간단해집니다.
  2. 오류 검출 및 수정 시스템
    • 데이터 전송 중 발생하는 특정 오류를 감지하거나 수정하는 데 활용됩니다.

Excess-3 코드 변환 예제

  1. 십진수 7을 Excess-3 코드로 변환
    • 7 + 3 = 10
    • 10을 4비트 이진수로 변환 → 1010
    • 결과: 1010.
  2. Excess-3 코드 1001을 십진수로 변환
    • 1001 → 십진수 9 (Excess-3에서는 9 - 3 = 6).
    • 결과: 6.

Excess-3 코드는 십진수를 효율적으로 다루면서도 오류 검출 및 보정을 가능하게 하는 유용한 코딩 방식 중 하나입니다.

728x90