이전 글에서 논의된 게이트들을 활용하여 컴퓨터를 구성하는 것이 가능합니다. 그러나 이를 위해서는 상당한 양의 게이트가 필요하며, 효율적인 작업 수행을 위해 이들을 영리하게 연결하는 전략이 요구됩니다. 이번 글에서는 이미 소개된 게이트들을 조합하거나 변형하여 컴퓨터에서 널리 사용되는 기본 게이트 두 가지를 제작해볼 예정입니다.
첫 번째로 소개할 변형된 게이트는 매우 단순한 구조를 가지고 있습니다. 기존에 사용된 게이트를 가져와서 입력 단자 a와 b를 서로 연결하고, 이 둘 사이에 새로운 입력선을 추가하는 것만으로 구성됩니다.
이렇게 함으로써 a와 b 입력 단자에 들어오는 신호는 항상 동일하게 됩니다. 새로운 입력이 활성화되면 a와 b 모두 활성화되고, 새로운 입력이 비활성화되면 a와 b 모두 비활성화됩니다. 그림과 표를 통해 이 변형된 게이트의 구조와 작동 원리를 확인할 수 있습니다. 이 게이트는 단 하나의 입력선과 하나의 출력선을 가지며, 결과적으로 출력 상태는 두 가지 경우만을 가집니다.
도표상에서 a와 b의 값이 항상 동일함을 확인할 수 있습니다. 이는 하나의 입력선만으로도 같은 입출력 관계가 유지됨을 의미합니다. 결과적으로 b 입력선은 제거해도 문제가 없습니다. 이제 단일 입력선만 존재하므로, 원래의 ‘D’ 형태 대신 아래 도식에서 볼 수 있듯이 삼각형 모양으로 표현이 가능합니다. 이로써 관련 표는 더욱 간소화됩니다.
두 번째 개조된 게이트는 이전 글에서 제작된 NAND 게이트에 방금 소개한 단일 입력 게이트를 추가하여 구성됩니다.
이러한 구조를 통해, 초기 게이트의 입력과 출력인 a, b, x에 이어, 추가된 게이트의 입력과 출력인 x와 c를 연결하여 완성됩니다.
이러한 구조는 컴퓨터 내부에서 널리 활용되므로, 다이어그램을 가능한 한 간결하게 유지하는 것이 바람직합니다. x 비트는 내부적인 중간 단계에 해당하므로, 외부 연결 없이도 다이어그램 내에서 생략할 수 있어 다이어그램을 단순화시킬 수 있습니다.
새로운 구조와 초기에 제시된 게이트 사이의 주요 차이점은, 새롭게 추가된 게이트에서는 게이트 몸체 앞에 위치했던 작은 원이 제거되었다는 것입니다. 이 변경을 표 형태로 단순화하여 표현하면, 중간 단계인 x를 표에서 제외함으로써, 더 간결한 형태의 표를 얻을 수 있습니다.
이렇게 변형된 게이트는 원래 게이트의 출력 부분에 있던 작은 원이 없어진 것을 제외하고, 출력 비트 'c'의 상태가 반대로 나타나는 것이 주요 차별점입니다. 이는 출력 비트가 반대의 상태를 가진다는 것을 의미하며, 이를 통해 다양한 논리적 연산을 수행할 수 있는 게이트 구조를 제공합니다.
AND 게이트는 컴퓨터 구축에 필수적이며 이해하기도 쉽지만, NAND 게이트를 다시 소개한 것은 특별한 이유가 있습니다. 첫째, NAND 게이트는 제작하기가 가장 용이합니다. 대량으로 생산해야 하는 경우, 제작 과정의 단순함과 필요한 부품 수의 최소화는 비용 절감과 안정성 향상에 직접적인 영향을 미칩니다. NAND 게이트는 이런 기준을 충족시킵니다.
두 번째 이유는 더욱 중요합니다. 컴퓨터 내의 모든 구성 요소와 기능은 여러 개의 NAND 게이트를 적절히 연결함으로써 구현될 수 있습니다. 실제로, NOT 게이트는 단 하나의 NAND 게이트로, AND 게이트는 두 개의 NAND 게이트로 제작 가능함을 이미 확인하였습니다. 앞으로, 여러 NAND 게이트를 조합하여 다양한 기능을 수행하는 복잡한 게이트를 만들어 볼 예정입니다. 이처럼, 작고 사소해 보이는 NAND 게이트가 컴퓨터 내 모든 장치의 기반이 됩니다.
NAND 게이트의 중요성은 컴퓨터 제작의 근본을 이룬다는 점에 있습니다. 비록 AND 게이트가 더 직관적이고 기본적인 연산을 나타낼 수 있으나, 실제로 컴퓨터 설계에는 NAND 게이트가 사용됩니다. 따라서, 이 글에서는 AND 게이트의 기능을 설명한 후, NAND 게이트와 NOT 게이트에 대한 이해를 바탕으로 AND 게이트의 구성과 기능을 다시 해석했습니다.
AND 게이트의 명칭은 일상 언어에서의 사용처럼 두 개체를 연결하는 접속사의 역할을 합니다. 컴퓨터 과학에서는 이를 두 입력 비트의 논리적 "그리고" 연산으로 확장하여 사용합니다. 이 글에서는 컴퓨터의 근본적인 원리를 단순화하여, 모든 컴퓨터 작동의 기본이 되는 비트와 NAND 게이트의 작동 원리에 초점을 맞추고 있습니다. NAND 게이트의 기본적인 작동 원리를 이해함으로써, 컴퓨터가 어떻게 비트를 처리하는지, 그리고 그것이 컴퓨터의 전반적인 작동 방식을 이해하는 데 어떻게 기여하는지를 파악할 수 있습니다.
'IT 기초' 카테고리의 다른 글
가산기 - 컴퓨터는 덧셈을 어떻게 할까? (0) | 2024.03.05 |
---|---|
OR, XOR - 게이트 변형을 통한 설계 (0) | 2024.03.04 |
게이트, 컴퓨터를 구성하는 기본단위(3) (0) | 2024.02.26 |
게이트, 컴퓨터를 구성하는 기본단위(2) (0) | 2024.02.24 |
게이트, 컴퓨터를 구성하는 기본 단위 (0) | 2024.02.22 |