Ch.1 AI와 프로그래밍의 만남
논리게이트 — AND, OR, NOT
AND, OR, NOT 논리게이트의 작동 원리를 이해한다논리게이트로 덧셈을 구현하는 원리를 파악한다
트랜지스터 몇 개로 덧셈을 할 수 있다?
트랜지스터 하나는 0과 1을 만들 뿐입니다. 하지만 2~3개를 조합하면 논리 연산이 가능합니다.
단순한 스위치가 어떻게 계산을 해낼까?
AND, OR, NOT — 모든 계산의 기본 벽돌입니다.
article
핵심 내용
AND, OR, NOT 트랜지스터로 만드는 논리 연산
AND: 둘 다 1이어야 1
OR: 하나만 1이면 1
NOT: 0↔1 반전
AND와 XOR를 조합하면 1비트 덧셈이 가능합니다
전가산기 32개를 연결하면 32비트 정수 덧셈기 이것이 ALU(산술논리장치)의 핵심
AND, OR, NOT을 Python 함수로 직접 만들어봅시다
# 논리게이트를 Python으로 직접 구현!
def AND(a, b):
return 1 if (a == 1 and b == 1) else 0
def OR(a, b):
return 1 if (a == 1 or b == 1) else 0
def NOT(a):
return 1 if a == 0 else 0
def XOR(a, b):
return 1 if a != b else 0
# 진리표 출력
print("=== AND 게이트 ===")
for a in [0, 1]:
for b in [0, 1]:
print(f" {a} AND {b} = {AND(a, b)}")
print("\n=== OR 게이트 ===")
for a in [0, 1]:
for b in [0, 1]:
print(f" {a} OR {b} = {OR(a, b)}")
# 🎯 반가산기: XOR + AND로 1비트 덧셈!
print("\n=== 반가산기 (1비트 덧셈) ===")
for a in [0, 1]:
for b in [0, 1]:
s = XOR(a, b) # 합 (Sum)
c = AND(a, b) # 올림 (Carry)
print(f" {a} + {b} = 합:{s} 올림:{c}")AND 게이트에 입력 A=1, B=0을 넣으면 출력은?
OR 게이트에 입력 A=0, B=0을 넣으면 출력은?
NOT 게이트는 입력값을 반대로 뒤집는다
논리게이트
key
핵심 용어
📝
0 + 0
= 0 (올림 없음)
📝
0 + 1
= 1 (올림 없음)
📝
1 + 0
= 1 (올림 없음)
⬆️
1 + 1
= 10 (올림 발생!)
edit_note
정리 노트
논리게이트 — AND, OR, NOT
3가지 기본 논리게이트
- AND
- 두 입력이 모두 1이어야 출력 1 (둘 다 참일 때만)
- OR
- 입력 중 하나만 1이면 출력 1 (하나라도 참이면)
- NOT
- 입력을 반전 — 0→1, 1→0
논리게이트로 계산하기
- XOR
- 두 입력이 다를 때 1 — 1비트 덧셈의 핵심
- 전가산기
- AND + XOR 조합으로 올림(carry) 포함 덧셈 구현
- ALU
- 전가산기 32개 연결 → 32비트 정수 덧셈기 (산술논리장치)
★
모든 복잡한 계산도 결국 AND, OR, NOT의 조합 — 논리게이트가 컴퓨터의 벽돌!
image
시각 자료
다이어그램: py-scene-logic-gates
check_circle
핵심 정리
- 1AND·OR·NOT → 논리 연산의 기본 단위
- 2논리게이트 조합 → 덧셈기 → ALU
퀴즈와 인터랙션으로 더 깊이 학습하세요
play_circle인터랙티브 레슨 시작