본문 바로가기

컴퓨터/컴퓨터 시험

정보처리 기능사 (전가산기)

728x90

**전가산기(Full Adder)**는 이진 덧셈을 처리하는 중요한 디지털 회로입니다. **반가산기(Half Adder)**와 달리, 전가산기는 세 개의 입력(두 개의 이진수 비트와 이전 자리에서 발생한 캐리)을 받아 두 개의 출력을 생성합니다. 이 회로는 **자리 올림(Carry-in)**을 고려하여 여러 비트의 이진 덧셈을 처리할 수 있습니다.

전가산기는 디지털 회로 설계, 산술 논리 장치(ALU)컴퓨터 아키텍처에서 중요한 역할을 합니다. 시험에서 나오는 전가산기 문제는 보통 회로 구성, 동작 원리, 진리표 작성 등을 포함합니다.

1. 전가산기 개념

전가산기는 세 개의 입력을 받아 두 개의 출력을 생성하는 회로입니다. 입력과 출력은 다음과 같습니다:

  • 입력:
    1. A: 첫 번째 이진수 비트
    2. B: 두 번째 이진수 비트
    3. Cin: 이전 자리에서 발생한 캐리 입력(Carry-in)
  • 출력:
    1. S (Sum): 두 입력 비트와 Cin을 더한 결과의 (0 또는 1)
    2. 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 게이트로 구성됩니다. 각 부품은 다음과 같이 작동합니다:

  1. 첫 번째 반가산기는 입력 A와 B를 더하여 첫 번째 **합(S1)**과 **캐리(C1)**를 생성합니다.
  2. 두 번째 반가산기S1Cin을 더하여 최종 **합(S)**을 계산하고, 두 번째 **캐리(C2)**를 생성합니다.
  3. 두 **캐리(C1)**과 C2OR 게이트를 통해 합쳐져 최종 **캐리(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)**는 ANDOR 연산을 통해 계산됩니다.
  • 전가산기반가산기 두 개를 결합하여 **자리 올림(Carry-in)**을 처리할 수 있습니다.
  • 전가산기다수 비트 덧셈에 사용되며, 디지털 회로 설계컴퓨터 아키텍처에서 핵심적인 역할을 합니다.

컴퓨터 시험에서 전가산기에 대한 문제는 주로 진리표 작성, 회로 구성, 동작 원리에 대해 물어보는 경우가 많습니다.

728x90