2025. 2. 23. 15:52ㆍ정보기술/하드웨어
📌 2-1. 레지스터 (Register) – CPU 내부의 즉시 연산 공간
레지스터는 CPU 내부에 있는 가장 빠른 메모리로,
컴퓨터가 프로그램을 실행할 때 가장 먼저 데이터를 저장하고 연산하는 공간입니다.
CPU가 직접 접근하는 초고속 메모리이기 때문에 프로그램 실행 속도를 결정하는 중요한 요소입니다.
🔹 1. CPU가 가장 먼저 데이터를 저장하는 곳
컴퓨터에서 프로그램을 실행하면, 데이터는 일반적으로 RAM → 캐시 → 레지스터 순서로 전달됩니다.
하지만 CPU가 연산을 수행할 때는 RAM이나 캐시보다도 더 빠른 공간이 필요합니다.
이때 사용하는 것이 바로 레지스터입니다.
✅ 레지스터의 주요 특징
- CPU 내부에 내장된 초고속 메모리
- 데이터를 즉시 저장하고 즉시 연산
- 용량은 매우 작지만 속도는 가장 빠름
- CPU의 연산 과정에서 가장 중요한 역할을 수행
💡 비유하자면?
- 레지스터는 요리할 때 셰프가 손에 쥐고 있는 재료
- 캐시 메모리는 조리대 위의 재료
- RAM은 냉장고 속의 재료
- 냉장고에서 재료를 꺼내기보다는 손에 들고 바로 쓰는 것이 가장 빠르죠!
🔹 2. 프로그램 실행 속도를 빠르게 하는 역할
컴퓨터에서 프로그램을 실행할 때, CPU는 수많은 계산을 초고속으로 수행해야 합니다.
RAM에서 데이터를 가져와 사용할 수도 있지만, RAM은 CPU보다 속도가 느리기 때문에
CPU가 RAM을 직접 읽고 쓰면 프로그램 실행 속도가 느려집니다.
✅ 레지스터가 속도를 빠르게 하는 원리
- CPU가 실행할 명령어를 레지스터에 저장
- 연산할 데이터를 레지스터에 가져옴
- CPU가 레지스터에서 직접 연산 수행
- 연산 결과를 다시 레지스터에 저장
💡 RAM과 비교하면?
- RAM에서 데이터를 가져오면 약 100ns(나노초) 소요
- 레지스터에서는 1ns 미만으로 즉시 처리 가능
- 즉, 레지스터를 활용하면 프로그램 실행 속도가 비약적으로 빨라짐
🔹 3. 레지스터의 종류 (PC, IR, GPR 등)
CPU에는 여러 종류의 레지스터가 있으며, 각 레지스터는 특정한 역할을 담당합니다.
레지스터 종류 | 설명 | 예제 |
PC (Program Counter) | 다음 실행할 명령어의 주소 저장 | "다음 명령어가 어디에 있는지 알려줌" |
IR (Instruction Register) | 현재 실행 중인 명령어 저장 | "CPU가 어떤 명령을 실행해야 하는지 기억" |
GPR (General Purpose Register) | 일반적인 연산용 저장 공간 | "A + B 연산 시, A와 B를 저장" |
MAR (Memory Address Register) | 메모리에서 읽어올 데이터의 주소 저장 | "RAM에서 데이터를 가져올 위치" |
MDR (Memory Data Register) | 메모리에서 읽어온 데이터 저장 | "RAM에서 가져온 값을 임시 보관" |
ACC (Accumulator) | 연산 결과를 저장 | "A + B 연산 결과 저장" |
SP (Stack Pointer) | 스택 메모리의 위치 저장 | "함수 호출 시 데이터 저장 위치" |
FLAGS (Status Register) | 연산 결과 상태 저장 | "연산 후 결과가 0인지, 음수인지, 오버플로우 발생 여부" |
💡 예제 시나리오
🔹 프로그램이 실행될 때 레지스터가 어떻게 작동하는지 예를 들어보겠습니다.
1️⃣ CPU는 PC (Program Counter) 를 보고 다음 실행할 명령어의 위치를 확인
2️⃣ 해당 명령어를 IR (Instruction Register) 에 로드
3️⃣ 만약 두 개의 숫자를 더하는 명령어라면, 두 숫자는 GPR (General Purpose Register) 에 저장
4️⃣ 덧셈 연산을 수행하고 결과는 ACC (Accumulator) 에 저장
5️⃣ 연산이 끝나면 PC (Program Counter) 가 다음 명령어로 이동하여 반복 수행
💡 즉, 레지스터가 없다면?
- CPU는 RAM에서 계속 데이터를 불러와야 해서 속도가 느려짐
- 연산 속도가 급격히 떨어져 프로그램 실행이 지연됨
🎯 4. 정리하기
✅ 레지스터는 CPU 내부에 있는 가장 빠른 메모리이며, 즉시 연산을 수행하는 공간이다.
✅ CPU가 직접 접근하여 데이터를 저장하고 처리하기 때문에 프로그램 실행 속도를 높인다.
✅ PC, IR, GPR, ACC 등 다양한 레지스터가 존재하며 각각 특정한 역할을 담당한다.
✅ 레지스터가 없다면 CPU는 RAM에서 데이터를 계속 불러와야 하기 때문에 속도가 급격히 느려진다.
'정보기술 > 하드웨어' 카테고리의 다른 글
메모리 종류 - 3장. 주 기억장치 (메인 메모리, RAM) (3-2. DDR 메모리 – RAM의 발전 과정) (0) | 2025.02.23 |
---|---|
메모리 종류 - 3장. 주 기억장치 (메인 메모리, RAM) (3-1. RAM (Random Access Memory) – 컴퓨터의 작업 공간) (0) | 2025.02.23 |
메모리 종류 - 2장. CPU가 직접 사용하는 메모리 (초고속 메모리) (2-2. 캐시 메모리 (Cache) – CPU가 자주 쓰는 데이터를 저장) (0) | 2025.02.23 |
메모리 종류 - 1. 메모리란 무엇인가? (1-2. 메모리의 기본 개념) (0) | 2025.02.23 |
메모리 종류 - 1. 메모리란 무엇인가? (1-1. 컴퓨터에서 메모리의 역할) (0) | 2025.02.23 |