레지스터
레지스터의 정의
레지스터는 프로세서 내부에 내장된 가장 작은 데이터 저장 요소다.
- 프로세서가 직접 접근할 수 있는 메모리 위치
- 명령어, 저장 주소 또는 비트 시퀀스, 개별 문자와 같은 데이터를 저장할 수 있다.
레지스터의 종류
- 누산기 레지스터(Accumulator Register)
- 계산 결과를 저장하는 레지스터로, 산술 연산 결과가 누적
- 프로그램 카운터(Program Counter)
- 현재 실행할 명령어의 주소를 저장합니다. 프로그램 흐름을 제어하는 데 사용
- 명령어 레지스터(Instruction Register)
- CPU가 현재 실행 중인 명령어를 저장하는 레지스터
- 주소 레지스터(Address Register)
- 메모리에서 데이터를 읽거나 쓸 때 사용할 주소를 저장.
- 일반 목적 레지스터(General-Purpose Register)
- 여러 작업을 위해 사용되는 레지스터로, 임시로 데이터를 저장하고 연산에 사용
메모리
메모리의 정의
메모리는 컴퓨터 프로그램, 명령어, 데이터를 저장하는 데 사용되는 하드웨어 장치
- 프로세서 내부에 있는 메모리는 주기억장치(RAM)
- 프로세서 외부에 있는 메모리는 2차 기억장치(하드 드라이브)
메모리의 종류
- 휘발성 메모리(Volatile Memory)
- 전원이 꺼지면 그 내용을 잃어버리는 메모리
- RAM(Random Access Memory)
- 비휘발성 메모리(Non-Volatile Memory)
- 전원이 꺼져도 내용을 유지하는 메모리
- EPROM(Erasable Programmable Read-Only Memory)
레지스터와 메모리를 비교해 보자!
레지스터와 메모리의 차이점
| 항목 | 레지스터 | 메모리 |
|---|
| 설명 | 레지스터는 CPU가 현재 처리 중인 오퍼랜드나 명령어를 저장한다 | 메모리는 CPU에서 현재 실행 중인 프로그램이 필요한 명령어와 데이터를 저장한다 |
| 데이터 용량 | 레지스터는 약 32비트에서 64비트의 작은 데이터를 저장한다 | 컴퓨터의 메모리는 몇 GB에서 TB까지 확장될 수 있다 |
| 접근 속도 | CPU는 하나의 클럭 사이클에서 하나 이상의 연산을 수행할 수 있는 속도로 레지스터 내용을 조작할 수 있다 | CPU는 레지스터보다 느린 속도로 메모리에 접근한다 |
| 유형 | 누산기 레지스터, 프로그램 카운터, 명령어 레지스터, 주소 레지스터 등 | 메모리의 유형은 RAM 등이다 |
| 제어 가능성 | 레지스터는 제어할 수 있어서 정보를 저장하고 검색할 수 있다 | 메모리는 거의 제어할 수 없다 |
| 속도 비교 | 레지스터는 메모리보다 빠르다 | RAM은 레지스터보다 훨씬 느리다 |
레지스터, 메모리, 디스크는 어떻게 함께 작동할까?
🥗 샐러드 만들기

현재 주방에는 다음과 같은 것들이 있다고 하자.
- 냉장고: 샐러드를 위한 채소를 저장하는 곳
- 카운터: 모든 채소를 도마에 올리기 전에 놓는 곳
- 도마: 채소를 자르는 곳
- 레시피: 어떤 채소를 자를지 상세히 적어 놓은 것
- 도마의 모서리: 자른 채소를 더 자르거나 다른 채소와 섞을 때 잠시 보관하는 공간
- 그릇: 샐러드를 섞고 보관하는 곳
샐러드를 만드는 과정은 이렇게 진행된다.
- 채소를 냉장고에서 카운터로 가져온다.
- 레시피에 맞게 일부 채소를 도마에 올리고 자른다.
- 자른 채소를 도마의 모서리에 잠시 두거나 다른 채소와 섞는다.
- 모든 채소를 그릇에 담고 냉장고에 다시 넣거나 식탁에 올린다.
자, 그럼 여기에서 컴퓨터와 연관을 지어보자!
- 냉장고는 2차 저장소(디스크)에 해당한다.
- 많은 양의 데이터를 오랫동안 저장할 수 있다.
- 카운터는 컴퓨터의 메인보드에 해당한다.
- 모든 작업은 카운터(컴퓨터 내부)에서 이루어진다.
- 도마는 ALU(산술/논리 연산 장치)에 해당한다.
- 레시피는 제어 장치에 해당한다.
- 제어 장치는 도마(ALU)에서 무엇을 해야 할지 알려준다.
- 카운터의 공간은 RAM(주기억장치)에 해당한다.
- 도마의 모서리는 레지스터에 해당한다.
- 빠르게 접근할 수 있지만, 데이터를 많이 저장할 수 없다.
- 샐러드볼은 임시 레지스터와 같다.
- 데이터를 보관하거나 다른 곳으로 옮기기 전에 잠시 저장하는 곳이다.
- 테이블에 올라가거나 아니면 디스크에 저장될 수 있다.