BCD 코드는 디지털 회로에서 중요한 역할을 합니다. BCD는 Binary Coded Decimal Number의 약자입니다. BCD 코드에서는 십진수의 각 자릿수가 해당하는 이진수로 표시됩니다. 따라서 10진수의 LSB와 MSB는 2진수로 표시됩니다. 이진수를 BCD로 변환하는 방법은 다음과 같습니다.
- 먼저 이진수를 십진수로 변환하겠습니다.
- 10진수를 BCD로 변환하겠습니다.
이진수를 BCD로 변환하는 과정을 이해하기 위해 예를 들어 보겠습니다.
예시 1: (11110)2
1. 먼저 주어진 이진수를 십진수로 변환합니다.
MB에서 GB로
이진수: (11110)2
숫자에 해당하는 소수 찾기:
단계 | 이진수 | 십진수 |
---|---|---|
1) | (11110)2 | ((1 × 24) + (1 × 2삼) + (1 × 22) + (1 × 21) + (0 × 20))10 |
2) | (11110)2 | (16 + 8 + 4 + 2 + 0)10 |
삼) | (11110)2 | (30)10 |
2진수(11110)의 10진수2(30)10
2. 이제 십진수를 BCD로 변환합니다.
십진수의 각 자릿수를 4비트 이진수 그룹으로 변환합니다.
자바의 회문
단계 | 십진수 | 변환 |
---|---|---|
1 단계 | 3010 | (0011)2(0000)2 |
2 단계 | 3010 | (00110000)BCD |
결과:
(11110)2= (00110000)BCD
아래는 10진수와 2진수의 BCD 코드를 포함하는 표입니다.
바이너리 코드 | 십진수 | BCD 코드 |
---|---|---|
에비씨디 | 비4:비삼비2비1비0 | |
0 0 0 0 | 0 | 0 : 0 0 0 0 |
0 0 0 1 | 1 | 0 : 0 0 0 1 |
0 0 1 0 | 2 | 0 : 0 0 1 0 |
0 0 1 1 | 삼 | 0 : 0 0 1 1 |
0 1 0 0 | 4 | 0 : 0 1 0 0 |
0 1 0 1 | 5 | 0 : 0 1 0 1 |
0 1 1 0 | 6 | 0 : 0 1 1 0 |
0 1 1 1 | 7 | 0 : 0 1 1 1 |
1 0 0 0 | 8 | 0 : 1 0 0 0 |
1 0 0 1 | 9 | 0 : 1 0 0 1 |
1 0 1 0 | 10 | 1 : 0 0 0 0 |
1 0 1 1 | 열하나 | 1 : 0 0 0 1 |
1 1 0 0 | 12 | 1 : 0 0 1 0 |
1 1 0 1 | 13 | 1 : 0 0 1 1 |
1 1 1 0 | 14 | 1 : 0 1 0 0 |
1 1 1 1 | 열 다섯 | 1 : 0 1 0 1 |
위의 표에서 십진수의 최상위 비트는 B4 비트로 표현되고, 최하위 비트는 B3, B2, B1, B0으로 표현된다. 위의 표에서 BCD 코드의 다양한 비트에 대한 SOP 함수를 다음과 같이 표현할 수 있습니다.
위 SOP 함수의 K-map은 다음과 같습니다.
BCD를 바이너리로 변환
BCD 코드를 바이너리로 변환하는 과정은 바이너리 코드를 BCD로 변환하는 과정과 반대입니다. BCD 코드를 바이너리로 변환하는 단계는 다음과 같습니다.
첫 번째 단계에서는 변환하겠습니다. 4비트 그룹을 만들고 각 그룹에 해당하는 십진수를 찾아 BCD 숫자를 십진수로 만듭니다.
마지막 단계에서는 변환하겠습니다. 10진수를 2진수로 변환하는 과정을 통해 10진수를 2진수로 변환합니다.
지도 대 세트
예시 1: (00101000)BCD
1) BCD를 10진수로 변환
4자리 숫자의 그룹을 만들고 다음과 같이 동등한 십진수를 찾으세요.
단계 | BCD 번호 | 변환 |
---|---|---|
1 단계 | (00101000)BCD | (0010)2(1000)2 |
2 단계 | (00101000)BCD | (2)10(8)10 |
3단계 | (00101000)BCD | (28)10 |
주어진 BCD 코드의 십진수는 다음과 같습니다: (28)10
2. 10진수를 2진수로 변환
긴 나눗셈 방법을 사용하여 다음과 같이 10진수를 2진수로 변환합니다.
자바에서 업데이트하는 방법
단계 | 작업 | 결과 | 나머지 |
---|---|---|---|
1. | 28/2 | 14 | 0 |
2. | 14/2 | 7 | 0 |
삼. | 7/2 | 삼 | 1 |
4. | 3/2 | 1 | 1 |
5. | 1/2 | 0 | 1 |
나머지는 역순으로 배열하세요. 따라서 이진수의 LSB는 첫 번째 나머지이고, 이진수의 MSB는 마지막 나머지입니다.
십진수(18)의 이진수10: (11100)2
결과:
(00101000)BCD= (11100)2