* warning : 이건 '전산직 컴퓨터 일반 [지안에듀]'로 공부한 CS 지식을 내 말로 정리하고 기억하기 위해 작성하는 것으로, 틀린 표현이 있을 수 있습니다 -> 피드백 적극 환영

제어 장치와 연산장치
지금부터 CPU에 대해 배울건데 CPU의 구성요소 3가지 제어, 연산, 기억 장치에 대해 알아보자.
(기억 장치 = 레지스터 는 제어,연산 장치 안에 있고 독립된게 아니다 보니 따로 다루진 않을거임)

1. 제어 장치

말 그대로 RAM,ROM 주기억 장치에 저장된 명령어에 따라 각 장치에 필요한 제어 신호를 보냄!
1) 제어장치의 기능
- 주기억장치에서 명령어 가져오고 자기가 읽기
- ALU 한테 계산 시키기
- 주기억 장치와 ALU 사이 경호 정하기 (어느 저장소에서 ALU 의 어느 레지스터로 갈지 등)
- 입출력 장치 간접 제어 (예: 키보드 제어기에게 키보드한테 입력 받아오라고 하기)
2) 제어장치의 구성요소
| 이름 | 영어 이름 | 역할 |
| 프로그램 카운터 | PC, Program Counter | 다음에 실행시킬 명령어 주소 기억하는 레지스터 |
| 주소 레지스터 | MAR, Memory Access Register | 주기억장치에서 선택될 주소를 기억함 |
| 메모리 버퍼 레지스터 | MBR, Memory Buffer Register | PC 나 MAR 가 지정하는 주기억장치의 내용을 임시로 기억함 |
| 명령어 레지스터 | IR, Instruction Register | PC 가 지정한 주소의 명령어를 인출해서 그 명령어 실행 완료될 때까지 보관함 |
| 명령어 해독기 (회로) | Instruction Decoder | IR 에서 보내온 명령 코드 해독하는 회로 |
| 인덱스 레지스터 | IX, Index Register | 명령 어드레스 바꿀 때 사용함. 예: 명령어: "100번지 데이터 읽어" 인덱스 레지스터 = 5 → 실제로는 105번지 데이터 읽음 - 반복문에 유용 |
| 제어 신호 발생기 (회로) | Control Dignal Generator | Instruction Decoder 에게 받아온 명령을 각 장치가 실행하도록 신호 보냄 |
3) 명령어 실행 순서



- 우선 명령어 인출을 해줌.
- PC가 주소 뱉어내면 MAR가 그거 기억하고 메모리로 감.
- 메모리에 있던 내용 MBR한테 복붙함.
- IR은 이제 그 명령어 끝날 때까지 명령어 저장하고 있음.
- 해독함.
- IR 에서 Instuction Decoder 명령어 해독기한테 명령어 주면 이제 해독함.
- 실행함
- 해독기가 Control Signal Generator 한테 해독된 신호 보내면 이제 얘는 다른 장치들한테 이래라 저래라 함.
4. 마지막엔 주소처리기라는 애가 다음 명령어 주소를 PC 에 넣고 그 뒤로 또 반복이다.

2. 연산 장치 ALU
Arithmatic-Logic Unit
명령어 내에 있는 연산자의 연산을 담당한다!
논리 연산은 논리 연산부, 사칙연산은 산술 연산부가 맡고 이들을 보조하는 시프터가 있음.
1) 구성요소
다 레지스터다..!
| 이름 | 영어 이름 | 역할 |
| 누산기 | Accumulator | 계산하다가 생기는 데이터 잠시 기억함 |
| 데이터 레지스터 | Data Register | 주기억창치로부터 받은 데이터를 임시 보관하다가 계산할 때 제공해 줌. |
| 가산기 | Adder | 누산기와 데이터 레지스터의 두수를 가산함. 결과는 누진기에 저장 |
| 상태 레지스터 | Status Register | 여러 플래그가 있어서 연산 결과가 양수/음수 인지, 자리올림, 오버플로우, 인터럽트 유무 등을 나타내줌 |
| 범용 레지스터 | General Register | 다목적으로 사용할 수 있음. |
| 부동소수점 레지스터 | Floating Register | 자리수가 엄청 크거나 엄청 작은 수 계산할 때 씀 |
| 시프트 레지스터 | Shift Register | 지정된 비트 수만큼 시프트해서 곱셈, 나눗셈 연산을 함. |
'CS 🦾' 카테고리의 다른 글
| 컴퓨터 시스템의 구성요소 (0) | 2026.02.09 |
|---|---|
| 부동 소수점 (0) | 2026.02.05 |
| 고정 소수점 (0) | 2026.02.04 |
| 혼자 공부하는 컴퓨터 구조 + 운영체제 - 제 5장 CPU 성능 향상 기 (1) | 2024.12.19 |