전자일기

이진 코드 십진수

전자김치 2024. 1. 11. 17:56
728x90

이진 코드 십진수

Binary Coded Decimal(BCD)은 10진수를 2진수로 변환하는 또 다른 프로세스입니다.

튜토리얼의 이진수 섹션 에서 살펴본 것처럼 디지털 및 전자 회로에는 각각 고유한 용도로 사용되는 다양한 이진 코드가 있으며 이진 코드 십진법이 주요 코드 중 하나입니다.

우리는 자연스럽게 10진수(10진수) 세계에 살기 때문에 이러한 10진수를 컴퓨터와 디지털 전자 장치가 이해할 수 있는 2진수(2진수) 환경으로 변환하는 방법이 필요하며, 2진수로 코딩된 10진수 코드를 통해 이를 수행할 수 있습니다.

우리는 이전에 n비트 이진 코드가 1과 0의 최대 2n 개의 개별 조합을 가정하는 "n" 비트 그룹임을 살펴보았습니다. Binary Coded Decimal 시스템의 장점은 각 10진수가 16진수와 거의 동일한 방식으로 4개의 이진수 또는 비트 그룹으로 표현된다는 것입니다. 따라서 10진수(0~9)에는 4비트 이진 코드가 필요합니다.

그러나 혼동하지 마십시오. 이진 코드로 된 십진수 는 16진수와 동일하지 않습니다. 4비트 16진수는 2진수 1111 2 (10진수 15) 을 나타내는 F 16 까지 유효하지만 , 2진수로 코딩된 10진수는 9 2진수 1001 2 에서 중지됩니다 . 즉, 4개의 이진수를 사용하여 16개의 숫자( 2 4 )를 표현할 수 있지만 BCD 번호 체계에서는 1010 (10진수 10), 1011 (10진수 11), 1100 (10진수 12), 1101 ( 10진수 13), 1110 (10진수 14), 1111 (10진수 15)은 금지된 숫자로 분류되어 사용할 수 없습니다.

 

이진 코드 십진수의 주요 장점은 십진수(10진수)와 이진수(2진수) 형식 간의 변환이 쉽다는 것입니다. 그러나 1010 (십진수 10)~ 1111 (십진수 15) 사이의 상태를 사용하지 않아 BCD 코드가 낭비된다는 단점이 있다. 그럼에도 불구하고 이진 코드 십진법은 특히 디지털 디스플레이를 사용하는 중요한 응용 분야가 많습니다.

BCD 번호 지정 시스템에서 10진수는 숫자 내의 각 10진수에 대해 4비트로 구분됩니다. 각 십진수는 숫자를 직접 변환하여 가중치가 부여된 이진수 값으로 표시됩니다. 따라서 4비트 그룹은 0의 경우 0000 부터 9의 경우 1001 까지 표시된 각 10진수를 나타냅니다 .

예를 들어 십진수로 표시된 357 10  (삼백오십칠)은 이진 코드 십진수로 다음과 같이 표시됩니다.

357 10  = 0011 0101 0111  (BCD)

그러면 각 4비트 그룹의 이진 비트가 최종 값의 주어진 가중치를 나타내기 때문에 BCD가 가중치 코드화를 사용한다는 것을 알 수 있습니다. 즉, BCD는 가중치 코드이고 이진 코드 십진 코드에 사용되는 가중치는 8 , 4 , 2 , 1 이며, 관련 십진 숫자의 4비트 이진 표현을 구성하므로 일반적으로 8421 코드 라고 합니다.

10진수를 이진 코드로 표현한 10진수 표현

바이너리 파워 23 22 21 20
바이너리 가중치: 8 4 2 1

왼쪽에 있는 각 소수점 이하 자릿수의 소수점 가중치는 10배 증가합니다. BCD 숫자 체계에서는   그림과 같이 각 자릿수의 이진수 가중치가 2배 만큼 증가합니다. 그런 다음 첫 번째 숫자의 가중치는   1  2 0  )이고, 두 번째 숫자의 가중치는   2  2 1  )이며, 세 번째 숫자의 가중치는   4  2 2  ), 네 번째 숫자의 가중치는   8  2 3  )입니다.

그러면 십진수(디나리) 숫자와 가중 이진 코드 십진수 사이의 관계는 다음과 같습니다.

이진 코드 십진수의 진리표

십진수 BCD 8421 코드
0 0000 0000
1 0000 0001
2 0000 0010
3 0000 0011
4 0000 0100
5 0000 0101
6 0000 0110
7 0000 0111
8 0000 1000
9 0000 1001
10 (1+0) 0001 0000
11 (1+1) 0001 0001
12 (1+2) 0001 0010
20 (2+0) 0010 0000
21 (2+1) 0010 0001
22 (2+2) 0010 0010
등 4인 1조로 계속해서 위쪽으로 진행됩니다.

그러면 우리는 8421 BCD 코드가 각 이진수의 가중치에 지나지 않으며 각 십진수(디너리) 숫자가 4비트 순수 이진수로 표현된다는 것을 알 수 있습니다 .

십진수에서 BCD로의 변환

위에서 본 것처럼 10진수를 2진수로 변환하는 것은 16진수를 2진수로 변환하는 것과 매우 유사합니다. 먼저, 10진수를 가중치가 부여된 숫자로 분리한 다음 표시된 대로 각 10진수를 나타내는 해당 4비트 8421 BCD 코드를 기록합니다.

2진화 10진수 예시 No1

위 표를 사용하여 다음 십진수(디너리) 숫자인 85 10 , 572 10 및 8579 10 을 해당하는 8421 BCD로 변환하세요.

85 10  = 1000 0101  (BCD)

572 10  = 0101 0111 0010  (BCD)

 

8579 10  = 1000 0101 0111 1001  (BCD)

변환 후 결과 이진수는 십진수의 실제 이진 변환이 됩니다. 이는 이진 코드가 실제 이진수로 변환되기 때문입니다.

BCD에서 십진수로의 변환

이진 코드 십진수에서 십진수로의 변환은 위와 정반대입니다. 간단하게 이진수를 4자리 그룹으로 나누고, 최하위 숫자부터 시작하여 각 4비트 그룹이 나타내는 10진수를 씁니다. 완전한 4비트 그룹화를 생성하려면 필요한 경우 끝에 0을 추가하십시오. 예를 들어 110101 2는 10 진수로 0011 0101 2 또는 35 10 이 됩니다 .

2진화 10진수 예시 No2

다음 이진수 1001 2 , 1010 2 , 1000111 2 및 10100111000.101 2 를 해당하는 십진수로 변환합니다.

1001 2  = 1001 BCD  = 9 10

1010 2  =  십진수 10 10 이고 유효한 BCD 번호가 아니기 때문에 오류가 발생합니다.

1000111 2  = 0100 0111 BCD  = 47 10

10100111000.101 2  = 0101 0011 0001.1010 BCD  = 538.625 10

BCD를 십진수로 또는 십진수를 BCD로 변환하는 작업은 비교적 간단한 작업이지만 BCD 숫자는 비트를 사용하여 표현하더라도 이진수가 아니라 십진수라는 점을 기억해야 합니다. 대부분의 사람들이 사용하는 마이크로프로세서 기반 시스템은 10진수 체계에 있어야 하기 때문에 10진수에 대한 BCD 표현을 이해하는 것이 중요합니다.

그러나 BCD는 코딩 및 디코딩이 쉽지만 숫자를 저장하는 효율적인 방법은 아닙니다. 표준 8421 BCD 십진수 인코딩에서 주어진 십진수를 나타내는 데 필요한 개별 데이터 비트 수는 항상 동등한 이진수 인코딩에 필요한 비트 수보다 큽니다.

예를 들어, 이진수에서는 0에서 999까지의 세 자리 십진수에는 10비트( 1111100111 2 )만 필요한 반면, 이진 코드 십진수에서는 동일한 숫자에 최소 12비트( 0011 1110 0111 BCD )가 필요합니다. 동일한 표현.

또한 이진 코드 십진수를 사용하여 산술 작업을 수행하는 것은 각 숫자가 9를 초과할 수 없기 때문에 약간 어색할 수 있습니다. BCD에 두 개의 십진수를 추가하면 다음 그룹에 추가해야 하는 캐리 비트 1이 생성될 수 있습니다. 4비트.

캐리 비트가 추가된 이진 합이 9(1001) 이하이면 해당 BCD 숫자가 올바른 것입니다. 그러나 이진 합이 9보다 크면 결과는 잘못된 BCD 숫자입니다. 따라서 BCD 숫자를 순수 이진수로 변환하고 필요한 덧셈을 수행한 다음 결과를 표시하기 전에 다시 BCD로 변환하는 것이 좋습니다.

그럼에도 불구하고 마이크로 전자 공학과 컴퓨터 시스템 모두에서 BCD 코딩 시스템을 사용하는 것은 이진 코드 십진수가 하나 이상의 7세그먼트 LED 또는 LCD 디스플레이에 표시되도록 의도되고 널리 사용되는 집적 회로가 많이 있는 상황에서 특히 유용합니다. BCD 출력을 제공하도록 구성됩니다.

일반적인 IC 중 하나는 BCD 출력이 있는 10디케이드 카운터를 생성하기 위해 함께 사용할 수 있는 독립적인 2로 나누기 및 5로 나누기 카운터를 포함하는 74LS90 비동기 카운터/분배기입니다. 또 다른 제품은 기본 74LS90의 듀얼 버전인 74LS390이며 BCD 출력을 생성하도록 구성할 수도 있습니다.

그러나 가장 일반적으로 사용되는 BCD 인코딩 IC는 74LS47 및 74LS48 BCD 대 7세그먼트 디코더/드라이버입니다. 이는 카운터 등의 4비트 BCD 코드를 변환하고 이를 개별 세그먼트를 구동하는 데 필요한 디스플레이 코드로 변환합니다. 7세그먼트 LED 디스플레이의 모습입니다. 두 IC 모두 기능적으로 동일하지만 74LS47은 공통 양극 디스플레이를 구동하기 위한 액티브 로우 출력을 갖고, 74LS48은 공통 음극 디스플레이를 구동하기 위한 액티브 하이 출력을 갖습니다.

이진 코드 십진 디코더 IC

이진 코드 십진수 요약

여기서 우리는 Binary Coded Decimal ( BCD)이 정수와 분수 부분을 해당 이진수 부분으로 대체한 십진수의 4비트 이진 코드 표현임을 확인했습니다 . BCD 코드는 4비트를 사용하여 0부터 9까지의 10진수 10자리를 나타냅니다.

예를 들어, 0~9 범위의 십진수(1자리)를 표시하려면 4개의 데이터 비트(니블), 0~99 범위의 십진수(2자리)가 필요합니다. 숫자) 8비트(1바이트)가 필요하고, 0~999 범위의 10진수, (3자리) 12비트 등이 필요합니다. 두 개의 BCD 숫자를 저장하거나 표시하기 위해 단일 바이트(8비트)를 사용하여 바이트가 00 – 99 범위의 BCD 번호를 보유할 수 있도록 하는 것을 팩형 BCD 라고 합니다 .

표준 이진 코드 십진 코드는 일반적으로 가중치 8421 BCD 코드로 알려져 있으며, 8, 4, 2, 1은 최상위 비트(MSB)에서 시작하여 최하위 비트(LSB)로 진행되는 다양한 비트의 가중치를 나타냅니다. BCD 코드 비트의 개별 위치에 대한 가중치는 2 3 = 8 , 2 2 = 4 , 2 1 = 2 , 2 0 = 1 입니다 .

Binary Coded Decimal 시스템 의 주요 장점 은 순수 이진 시스템에 비해 십진수를 이진수로 변환하는 빠르고 효율적인 시스템이라는 것입니다. 그러나 BCD 코드는 많은 4비트 상태(10~16)가 사용되지 않지만 십진수 표시에는 중요한 용도가 있으므로 낭비적입니다.

728x90

'전자일기' 카테고리의 다른 글

전력 삼각관계 및 역률  (0) 2024.01.11
AC 회로의 전원  (0) 2024.01.11
이진 분수  (1) 2024.01.10
AC 회로의 수동 부품  (0) 2024.01.05
harmonics/고조파/배음 아라보자  (1) 2024.01.03