CPU는 부분적으로 나누었을 때, 아래와 같이 4가지로 나눌 수 있다.
- ALU(Arithmetic Logic Unit) : 연산을 담당한다.
- 컨트롤 유닛 : 명령어를 해석하고 시그널을 보내준다.
- 레지스터 : 메모리(램)에서 얻어온 정보를 저장해준다.
- 버스 인터페이스 : 메모리(램)에 있는 정보를 CPU로 가져올 때 어떠한 방식으로 데이터를 주고 받을것인지를 정의 해둔 것이다.
연산과정은 아래와 같다.
1. 하드디스크에 있는 데이터가 입/출력 버스를 통해 메모리(램)로 이동된다.
2. 메모리로 옮겨진 데이터가 입/출력 버스를 통해 CPU로 이동하기 위해 버스 인터페이스를 거친다.
3. 버스 인터페이스가 정의해둔 데이터 처리 방식으로 전달받은 데이터를 처리하고, 레지스터에 저장해둔다.
4. 컨트롤 유닛은 레지스터에 저장되어 있는 데이터를 해석해서 ALU에게 연산을 하라는 시그널을 보내고, 피연산자를 ALU로 이동하게 만든다.
5. ALU는 직접전인 연산을 수행하고 그 결과를 레지스터에 저장한다.
'뇌를 자극하는 윈도우즈 시스템 프로그래밍 > 개념' 카테고리의 다른 글
Direct 모드와 Indirect 모드 (0) | 2019.03.18 |
---|---|
프로그램 구현 관점에서의 WIN32 vs WIN64 // 오류의 확인 GetLastError 함수 (0) | 2019.03.18 |
MBCS와 WBCS의 동시 지원 (0) | 2019.03.18 |
Windows에서의 유니코드, 아스키코드, MBCS (0) | 2019.03.12 |
클럭 신호 (0) | 2019.03.12 |