
CPU 는 컴퓨터에서 가장 핵심적인 역할을 하는 '인간의 두뇌'에 해당
크게연산장치,제어장치,레지스터3가지로 구성된다.
범용 레지스터 : 연산에 필요한 데이터나 연산 결과를 임시로 저장특수목적 레지스터 : 특별한 용도로 사용하는 레지스터MAR(Memory Address Register) : 읽기와 쓰기 연산을 수행할 주기억장치 주소 저장한다.PC(Program Counter) : 다음에 수행할 명령어 주소 저장한다.IR(Instruction Register) : 명령어 레지스터로 현재 실행 중인 명령어 저장한다.MBR(Memory Buffer Register) : 주 기억장치에서 읽어온 데이터나 저장할 데이터를 임시 저장한다.AC(Accumulator) : 연산 결과를 임시 저장한다.주기억장치(RAM)는 입력장치(키보드, 마우스 등)에서 입력받은 데이터 또는 보조기억장치(HDD,SSD 등)에 저장된 프로그램을 읽어온다.주기억장치에 저장된 프로그램 명령어와 데이터를 읽어와 처리하고 결과를 다시 주기억장치에 저장주기억장치는 처리 결과를 보조기억장치에 저장하거나 출력장치(모니터 등)로 보낸다.제어장치는 1~3 과정에서 명령어가 순서대로 실행되도록 각 장치를 제어한다.CPU 가 실행할 명령어의 집합을 말한다.
연산코드(Operation Code)+피연산자(Operand)로 이루어져 있다.
- 연산코드 : 실행할 연산
- 피연산자 : 필요한 데이터 or 저장 위치
연산 코드는 연산, 제어, 데이터 전달, 입출력 기능을 가졌다.피연산자는 주소, 숫자/문자, 논리 데이터 등을 저장한다.명령어 사이클 이라 한다.인출/실행/간접/인터럽트 사이클로 나누어진다.인출 사이클에서 가장 중요한 부분은
PC(Program Counter)값 증가
T0 : MAR ← PC
T1 : MBR ← M[MAR], PC ← PC+1
T2 : IR ← MBR
T0 : MAR ← IR(Addr)
T1 : MBR ← M[MAR]
T2 : AC ← AC + MBR