본문 바로가기
개발/CS 지식

[컴퓨터 구조] ALU(산술 논리 장치)란 무엇일까요?

by grabthekey 2025. 6. 25.
반응형

 

ALU란?

ALU(Arithmetic and Logical Unit)는 산술 논리 장치로, 덧셈이나 뺄셈 같은 두 숫자의 산술 연산과 비트수준의 논리 연산(AND, OR, NOT, XOR 등)을 수행하는 디지털 회로를 말합니다. 이는 조건을 평가하고 프로그램의 제어 흐름을 조작하는데 사용되며, CPU안에 위치하고 있습니다. 

 

ALU의 기본 구성요소

1. 연산기

: 덧셈기, 뺄셈기, 증감기 등 산술 연산 수행

2. 논리 연산기

: AND, OR, XOR, NOT 등 논리 연산 수행

3. MUX

: 산술/논리 연산 결과 중 하나를 출력

4. 입력 레지스터 (Register A,B)

: ALU에서 연산할 데이터 A,B를 입력 받아 저장

5. Flag

: 상태를 나타내는 플래그 생성 (Zero, Carry, Overflow, Negative 등)

 

+ 추가로, 부동소수점 연산을 담당하는 FPU(Floating Point Unit), 벡터 및 병렬 연산을 하는 SIMD ALU, Swift Unit도 있다고 합니다.

 

연산결과는 레지스터에 임시 저장되었다가 플래그 갱신과 함께 메모리에 저장됩니다.

 

가장 많이 사용되는 ALU 중 하나인 ALU_74181에 대한 코드를 아래 깃허브에서 확인할 수 있습니다.

https://github.com/foodinsect/ALU_74181

 

GitHub - foodinsect/ALU_74181

Contribute to foodinsect/ALU_74181 development by creating an account on GitHub.

github.com

 

이와 관련된 분석 논문을 아래 페이지에서 확인할 수 있습니다.

https://www.koreascience.or.kr/article/CFKO200014835282144.pdf

 

반응형