**전가산기(Full Adder)**는 이진 덧셈을 처리하는 중요한 디지털 회로입니다. **반가산기(Half Adder)**와 달리, 전가산기는 세 개의 입력(두 개의 이진수 비트와 이전 자리에서 발생한 캐리)을 받아 두 개의 출력을 생성합니다. 이 회로는 **자리 올림(Carry-in)**을 고려하여 여러 비트의 이진 덧셈을 처리할 수 있습니다.
전가산기는 디지털 회로 설계, 산술 논리 장치(ALU) 및 컴퓨터 아키텍처에서 중요한 역할을 합니다. 시험에서 나오는 전가산기 문제는 보통 회로 구성, 동작 원리, 진리표 작성 등을 포함합니다.
1. 전가산기 개념
전가산기는 세 개의 입력을 받아 두 개의 출력을 생성하는 회로입니다. 입력과 출력은 다음과 같습니다:
- 입력:
- A: 첫 번째 이진수 비트
- B: 두 번째 이진수 비트
- Cin: 이전 자리에서 발생한 캐리 입력(Carry-in)
- 출력:
- S (Sum): 두 입력 비트와 Cin을 더한 결과의 합 (0 또는 1)
- Cout (Carry-out): 덧셈에서 발생한 자리 올림 (0 또는 1)
2. 전가산기의 동작
전가산기는 두 개의 비트(A, B)와 이전 자리에서 발생한 캐리(Cin)를 더하여 **합(S)**과 **캐리(Cout)**를 계산합니다. **합(S)**와 **캐리(Cout)**를 계산하는 방법은 다음과 같습니다:
- **합(S)**는 세 개의 입력(A, B, Cin)의 XOR 연산으로 계산됩니다.
- S = A ⊕ B ⊕ Cin
- XOR 연산은 두 입력이 다를 때만 1을 출력하고, 같을 때는 0을 출력합니다.
- **캐리(Cout)**는 두 가지 조건에 따라 계산됩니다:
- 첫 번째 조건: A와 B가 모두 1일 때 캐리가 발생합니다. (A ∧ B)
- 두 번째 조건: A와 B가 서로 다르고, Cin이 1일 때 캐리가 발생합니다. (Cin ∧ (A ⊕ B))
- 최종적으로, 두 조건을 OR 연산을 통해 합산하여 Cout을 구합니다.
- Cout = (A ∧ B) ∨ (Cin ∧ (A ⊕ B))
3. 전가산기 진리표
전가산기의 동작을 이해하기 위해 진리표를 살펴봅시다. A, B, Cin을 입력으로 받아 S와 Cout을 출력합니다:
A | B | Cin | S | Cout |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 0 |
0 | 1 | 0 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 1 |
1 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 1 |
4. 전가산기 예제
이제 전가산기의 동작을 예를 들어 설명하겠습니다.
예제 1: A = 0, B = 0, Cin = 0일 때
- 합(S) = 0 ⊕ 0 ⊕ 0 = 0
- 캐리(Cout) = (0 ∧ 0) ∨ (0 ∧ (0 ⊕ 0)) = 0 ∨ 0 = 0
결과:
- 합(S) = 0
- 캐리(Cout) = 0
예제 2: A = 0, B = 1, Cin = 0일 때
- 합(S) = 0 ⊕ 1 ⊕ 0 = 1
- 캐리(Cout) = (0 ∧ 1) ∨ (0 ∧ (0 ⊕ 1)) = 0 ∨ 0 = 0
결과:
- 합(S) = 1
- 캐리(Cout) = 0
예제 3: A = 1, B = 1, Cin = 0일 때
- 합(S) = 1 ⊕ 1 ⊕ 0 = 0
- 캐리(Cout) = (1 ∧ 1) ∨ (0 ∧ (1 ⊕ 1)) = 1 ∨ 0 = 1
결과:
- 합(S) = 0
- 캐리(Cout) = 1
예제 4: A = 1, B = 1, Cin = 1일 때
- 합(S) = 1 ⊕ 1 ⊕ 1 = 1
- 캐리(Cout) = (1 ∧ 1) ∨ (1 ∧ (1 ⊕ 1)) = 1 ∨ 0 = 1
결과:
- 합(S) = 1
- 캐리(Cout) = 1
5. 전가산기의 회로 구성
전가산기의 회로는 반가산기(Half Adder) 두 개와 OR 게이트로 구성됩니다. 각 부품은 다음과 같이 작동합니다:
- 첫 번째 반가산기는 입력 A와 B를 더하여 첫 번째 **합(S1)**과 **캐리(C1)**를 생성합니다.
- 두 번째 반가산기는 S1과 Cin을 더하여 최종 **합(S)**을 계산하고, 두 번째 **캐리(C2)**를 생성합니다.
- 두 **캐리(C1)**과 C2는 OR 게이트를 통해 합쳐져 최종 **캐리(Cout)**를 출력합니다.
6. 전가산기 응용
전가산기는 다수 비트 덧셈에서 **자리 올림(Carry)**을 처리할 수 있습니다. 예를 들어, 두 개의 4비트 이진수를 더하려면 4개의 전가산기를 연결하여 각 자리의 덧셈을 처리합니다. 각 자리에서 발생한 **캐리(Cout)**는 다음 자리로 넘겨져 다음 덧셈에 영향을 줍니다.
7. 전가산기와 반가산기의 차이점
특징 | 반가산기(Half Adder) | 전가산기(Full Adder) |
입력 | A, B | A, B, Cin |
출력 | 합(S), 캐리(C) | 합(S), 캐리(Cout) |
자리 올림 처리 | 처리 불가 | Carry-in 처리 가능 |
용도 | 단일 비트 덧셈 | 다수 비트 덧셈 처리 가능 |
8. 요약
- 전가산기는 세 개의 입력(A, B, Cin)을 받아 두 개의 출력(합(S), 캐리(Cout))을 생성하는 회로입니다.
- **합(S)**는 XOR 연산을 통해 계산하고, **캐리(Cout)**는 AND와 OR 연산을 통해 계산됩니다.
- 전가산기는 반가산기 두 개를 결합하여 **자리 올림(Carry-in)**을 처리할 수 있습니다.
- 전가산기는 다수 비트 덧셈에 사용되며, 디지털 회로 설계 및 컴퓨터 아키텍처에서 핵심적인 역할을 합니다.
컴퓨터 시험에서 전가산기에 대한 문제는 주로 진리표 작성, 회로 구성, 동작 원리에 대해 물어보는 경우가 많습니다.
'컴퓨터 > 컴퓨터 시험' 카테고리의 다른 글
정보처리 기능사 (디코더 : Decoder) (3) | 2024.12.01 |
---|---|
정보처리 기능사 (기타 조합논리회로) (3) | 2024.11.30 |
정보처리 기능사 (전가산기 : Full Adder) (2) | 2024.11.29 |
정보처리 기능사 (반가산기) (2) | 2024.11.28 |
정보처리 기능사 (반가산기 : Half Adder) (2) | 2024.11.28 |