2023.09.10
2023. 9. 10. 21:31ㆍ개인공부/시스템 프로그래밍
CPU
컴퓨터 시스템을 통제하고 프로그램의 연산을 실행, 처리하는 가장 핵심적인 컴퓨터의 제어 장치
ALU ( 산술논리연산장치)
덧셈, 뺄셈 같은 두 숫자의 산술연산과 배타적 논리합, 논리곱 같은 노리연산을 계산하는 디지털 회로이다.
Processor Register ( 프로세스 레지스터)
레지스터는 컴퓨터의 프로세스 내부에서 자료를 보관하는 아주 빠른 기억 장소이다.
제어 장치
제어 장치는 프로세스의 조작을 지시하는 컴퓨터 중앙 처리 장치의 한 부품이다.
프로그램 카운터 (Program Counter)
- 역할: 메모리에서 가져올 명령어의 주소를 가리키는 레지스터.
- 기능: 다음 실행할 명령어의 위치를 저장하고 갱신함.
명령어 레지스터 (Instruction Register)
- 역할: 메모리에서 읽어 들일 명령어를 저장하는 레지스터.
- 기능: 현재 실행 중인 명령어를 저장하고 해석하는 역할을 수행함.
메모리 주소 레지스터 (Memory Address Register)
- 역할: 메모리의 주소를 저장하는 레지스터.
- 기능: 메모리에서 데이터나 명령어를 읽거나 쓸 때 사용되는 주소를 저장함.
메모리 버퍼 레지스터 (Memory Buffer Register)
- 역할: 메모리와 주고받을 데이터나 명령어를 저장하는 레지스터.
- 기능: 메모리와 데이터 전송을 담당하며, CPU와 메모리 간 데이터 교환을 용이하게 해 줌.
CPU가 명령어를 해석하고 처리하는 과정
- 명령어 획득 (Instruction Fetch):
- 프로그램 카운터(Program Counter)는 다음에 실행할 명령어의 주소를 가리키는 레지스터입니다.
- CPU는 프로그램 카운터의 값에 해당하는 주소에서 명령어를 메모리나 캐시에서 가져옵니다.
- 명령어 해석 (Instruction Decode):
- CPU는 가져온 명령어를 해석하여 어떤 동작을 수행해야 하는지 결정합니다.
- 이 단계에서 명령어의 오퍼랜드(피연산자)도 식별됩니다.
- 실행 (Execution):
- 명령어가 어떤 작업을 수행해야 하는지 이해한 후, CPU는 해당 작업을 수행합니다.
- 이 작업은 다양할 수 있으며, 예를 들어 덧셈, 뺄셈, 논리 연산, 메모리 접근 등이 포함될 수 있습니다.
- 결과 저장 (Write Back):
- 명령어가 실행된 결과는 적절한 레지스터나 메모리 위치에 저장됩니다.
- 결과가 다음 명령어의 연산에 사용될 수 있습니다.