cs

[CS] 반가산기(Half Adder)와 전가산기(Full Adder) 동작 정리

연화 2025. 4. 8. 09:33

 

디지털 회로나 컴퓨터 구조를 공부하다 보면 꼭 등장하는 개념이 반가산기(Half Adder)전가산기(Full Adder)입니다.
처음 보면 ‘왜 굳이 이런 걸 알아야 하지?’ 싶을 수 있지만, 이 개념들은 컴퓨터가 이진수로 덧셈을 어떻게 처리하는지 이해하는 데 핵심이 됩니다.

오늘은 반가산기와 전가산기의 개념부터 동작 원리, 회로 구성까지 깔끔하게 정리해볼게요!

 


 

🧠 반가산기(Half Adder)란?

반가산기는 두 개의 1비트 이진수(A, B)를 입력으로 받아 합(Sum)올림(Carry)을 출력하는 회로입니다.

✔ 진리표

A B Sum Carry
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1

✔ 논리식

  • Sum = A ⊕ B (XOR)
  • Carry = A ⋅ B (AND)

✔ 회로 구성

  • XOR 게이트로 Sum을, AND 게이트로 Carry를 구현합니다.

반가산기는 두 비트만 더할 수 있고, 이전 자리에서 올라온 자리올림수(Carry-in)는 처리하지 못합니다.

 


 

🧠 전가산기(Full Adder)란?

전가산기는 반가산기의 한계를 보완한 회로입니다.
즉, 세 개의 입력(A, B, Carry-in)을 받아 합(Sum)자리올림(Carry-out)을 출력합니다.

✔ 진리표

A B C-In Sum C-out
0 0 0 0 0
0 1 0 1 0
1 0 0 1 0
1 1 0 0 1
0 0 1 1 0
0 1 1 0 1
1 0 1 0 1
1 1 1 1 1

✔ 논리식

  • Sum = A ⊕ B ⊕ Cin
  • Cout = (A ⋅ B) + (B ⋅ Cin) + (Cin ⋅ A)

Sum은 XOR을 두 번 적용하고, Cout는 OR과 AND를 조합한 복합 논리입니다.

 


 

🔄 반가산기 → 전가산기로!

전가산기는 실제로 두 개의 반가산기와 하나의 OR 게이트로 구성할 수 있어요.

구성 방법:

  1. 첫 번째 반가산기: A + B → Sum₁, Carry₁
  2. 두 번째 반가산기: Sum₁ + Cin → Sum (최종 합), Carry₂
  3. OR 게이트: Carry₁ + Carry₂ → Cout (최종 자리올림)

 


 

💻 어디에 쓰일까?

전가산기는 CPU 내부의 연산 장치(ALU)에서 핵심 역할을 합니다.
여러 비트로 구성된 이진수(예: 8비트)를 더할 때, 각 비트에 전가산기를 배치해 자리올림까지 고려한 덧셈 연산을 처리합니다.

즉, 우리가 단순히 5 + 7을 했을 때, 내부적으로는 이런 회로들이 일하고 있는 셈이죠.

 


 

📌 정리

구분 반가산기(Half Adder) 전가산기(Full Adder)
입력 A, B A, B, Cin
출력 Sum, Carry Sum, Cout
구성 XOR + AND 반가산기 2개 + OR
용도 단일 비트 덧셈 다중 비트 덧셈 (누산기 등)

 

 

반가산기와 전가산기는 얼핏 보면 단순한 논리 회로지만, 사실은 컴퓨터가 수를 계산하는 가장 기본적인 단위입니다.
이 작고 단순한 회로들이 모여 수많은 연산을 처리하고 있다는 걸 떠올리면, 디지털 시스템의 세계가 조금 더 흥미롭게 느껴질지도 몰라요.

다음 포스팅에서는 이 개념을 확장해, 여러 비트의 이진수를 덧셈하는 회로(리플 캐리 가산기)까지 이어서 정리해볼 예정입니다.

읽어주셔서 감사합니다 🙌
궁금한 점이나 피드백은 댓글로 언제든지 남겨주세요!

 

👀 CS 관련 다른 포스팅이 궁금하시다면 아래의 글을 추천해요

 

[CS] 논리 게이트(Logical Gates)란?

여러분이 지금 사용하고 계신 스마트폰, 컴퓨터, 심지어 전자레인지까지도0과 1이라는 단순한 두 숫자만으로 작동하고 있다는 사실, 알고 계셨나요?이처럼 디지털 기기들은 전기 신호가 흐른다(

dev-yeonwha.tistory.com

 

 

[CS] 이진수와 비트: 컴퓨터 정보 표현의 기초

우리가 사용하는 컴퓨터, 스마트폰, 태블릿은 굉장히 똑똑한 기계처럼 보이지만,사실 이들은 단 두 가지 숫자, 즉 0과 1만을 이해하는 단순한 계산기입니다.하지만 신기하게도 이 0과 1만으로 텍

dev-yeonwha.tistory.com