본문 바로가기
카테고리 없음

십진수를 표현하는 이진 코드, BCD, 8421, 2421, Excess-3, Excess-3 gray

by SayHiWorld 2024. 5. 26.

십진수에 대한 이진 코드는 최소 4비트를 필요로 한다.

십진수의 각 자리수는 0~9 중 하나로 표현되는데, 최대 숫자인 9( =1001 )는 4비트를 필요로 하기 때문이다.

 

십진수를 이진 코드로 나타내는 방법은 다양하다.

그 중 BCD(8421), 2421, Excess-3, Excess-3 gray 에 대해 소개하겠다.

10진수 BCD
8421
2421 Excess-3
(=BCD+0011)
Excess-3 gray
0 0000 0000 0011 0010
1 0001 0001 0100 0110
2 0010 0010 0101 0111
3 0011 0011 0110 0101
4 0100 0100 0111 0100
5 0101 1011 1000 1100
6 0110 1100 1001 1101
7 0111 1101 1010 1111
8 1000 1110 1011 1110
9 1001 1111 1100 1010

 

우선 BCD 표기법은 우리가 흔히 아는 이진수 표기법이다. 

각 자리의 가중치가 8, 4, 2, 1이 되므로 8421 코드라고도 불린다. 

 

마찬가지로, 2421 코드는 각 자리의 가중치가 2, 4, 2, 1인 코드이다.

십진수 7을 2421 코드로 표현하면 2x1+4x1+2x0+1x1 = 7 이다.

 

Excess-3 코드는 BCD 코드에 0011을 더한 코드이다.

 

Excess-3 gray 코드에서는 1비트만이 변한다. 

 

2진수를 gray code로 변환하는 방법은 다음과 같다.

최상위 비트는 그대로 쓰고,

이전 자리 수 비트와 현재 자리 수 비트와 비교해 같으면 0, 다르면 1을 쓴다. (XOR 연산)

 

그레이 코드를 이진 코드로 변환하는 경우,

마찬가지로 최상위 비트는 그대로 쓰고,

2진코드로 변환한 비트와 그레이 코드의 다음비트와 비교했을 때 같으면 0, 다르면 1을 쓴다. (XOR 연산)

 

마찬가지로, Excess-3 코드인 0011을 gray code로 변환하면

0 0 1 1

0 0 1 0 이다.