디지털 신호에서는 정보표현을 2진수로 한다.
왜 사람이 많이 사용하는 10진수가 아닌 2진수로 정보를 표현할까?
이에 대한 궁금증을 해결하기 위해서는 부울대수학과 NAND게이트 그리고 전압에 대한 이해가 필요하다.
부울대수학
부울 대수학 1849년 George Boole이 개발한 개념으로 논리학을 형상화 하기위해 만들어졌다.
0과 1의 표현으로 이루어져있으며 논리합, 논리곱, 부정의 연산이 정의된 대수 구조이다.
연산으로는 크게 AND, OR, XOR, NOT으로 이루어져있다.


조합논리와 순차논리는 위의 AND, OR, XOR, NOT 연산을 통해 구현 가능하다.
조합논리는 현재입력에 따라 출력값이 항상 일정하게 결정되는 논리회로로 가산기가 이에 포함된다.

순차논리는 현재입력값 뿐만 아니라 이전 입력값 까지 출력값에 영향을 미치기에 정보를 저장하는데 효율적이다. 플립플롭은 정보 저장을 위해 순차논리로 이루어져있다.
AND, OR, XOR, NOT 연산들을 활용하여 조합논리로 이루어진 가산기를 통해 산술계산을 쉽게 할 수 있으며, 순차논리로 이루어진 플립플롭을 활용하여 정보를 저장한다.
2진수를 활용하였을 때 간단한 논리구조를 통해 가산기와 같이 간단하게 산술계산을 구현 할 수 있으며, 정보 저장에도 용이하다.
전압과 COMS트랜지스터
실제 전기적으로 신호를 전달하기에 10진수의 경우 숫자 0~9까지 10가지의 다른 전압이 필요하다.
10진수를 0v~1v , 1v~2v, 3v~4v ….와 같이 해당 표현에 대해 전압의 구역을 나누었다고 가정했을
약 9v의 전압이 필요하고, 전압 전달에 방해가 있을 경우에 왜곡이 있을 수 있다.

하지만 2진수의 경우 2가지 전압을 통해 표현이 가능하다. 10진수의 표현보다 전압이 훨씬 적게 사용될 뿐 만 아니라, 전달에 왜곡이 다른 진수표현에 비해 적기 떄문에 전압전달에 용이하다.
전압이 1과 0으로 구분되는 전압의 기준에는 전자장치와 통신규격에 따라 다르며 ,여러가지 프로토콜에 명시되어있다.
이중 인텔이 사용하는 트랜지스터인 CMOS(Complementary Metal-Oxide-Semiconductor)를 예시로 들면,
CMOS은 일반적으로 전력공급의 절반을 기준으로 전력공급의 절반보다 많은 양의 전압인 경우 1로 인식하며 절반보다 적은 경우 0으로 인식한다. 최대 전력공급이 5v만큼 되는경우 2.5v이상이면 1로 인식하고, 2.5v보다 적으면 0으로 인식하는 것이다. CMOS트랜지스터를 활용하여 NAND게이트를 구현하여 컴퓨팅 시스템에서 논리회로로 많이 사용된다.
요약하자면 2진수는 0과 1로 이루어져있어 전압사용과 구분에 용이하며, 방해에 대한 저항성이 커 안정적으로 전압을 통한 정보 전달에 용이하다.
또한 이진수의 표현일 경우 NAND게이트와 같이 논리표현이 간결하고, 산술계산 구현이 쉽기 때문에, 디지털 시스템에서는 10진수가 아닌 2진수를 활용 하는 것이 효율적이다.
'Computer Science' 카테고리의 다른 글
| [데이터 통신] 정보의 압축 ( 무 손실 압축, 손실 압축) (0) | 2024.04.14 |
|---|---|
| [컴퓨터 구조] 파이프라이닝과 해저드 ( Pipelining & Hazards) (1) | 2024.03.19 |
| [데이터 통신] 정보의 형태와 디지털화 ( 아날로그, 디지털 ) (2) | 2024.03.12 |
| [시스템 소프트웨어] unsigned와 signed의 차이 / signed의 음수 표현 (2) | 2023.10.17 |