1. ALU와 제어장치

ALU

alu는 레지스터를 통해 피연산자를 받아들이고, 제어장치로부터 수행할 연산을 알려주는 제어 신호를 받아들입니다. alu는 레지스터와 제어장치로부터 받아들인 피연산자와 제어 신호로 다양한 연산을 수행합니다.

alu 연산 결과값은 플래그와 함께 레지스터에 저장됩니다.

제어장치가 받아들이는 정보

  1. 제어장치는 클럭 신호를 받아들입니다
  2. 제어장치는 해석해야 할 명령어를 받아들입니다
  3. 제어장치는 플래그 레지스터 속 플래그 값을 받아들입니다
  4. 제어장치는 시스템 버스, 그중에서 제어 버스로 전달된 제어 신호를 받아들입니다

2. 레지스터

반드시 알아야 할 레지스터

  1. 프로그램 카운터
    1. 메모리에서 가져올 명령어의 주소, 즉 메모리에서 읽어 들일 명령어의 주소를 저장합니다.
  2. 명령어 레지스터
    1. 방금 메모리에서 읽어 들인 명령어를 저장하는 레지스터
  3. 메모리 주소 레지스터
    1. 메모리의 주소를 저장하는 레지스터
  4. 메모리 버퍼 레지스터
    1. 메모리와 주고받을 값을 저장하는 레지스터
  5. 플래그 레지스터
    1. 연산 결과 또는 CPU 상태에 대한 부가적인 정보를 저장하는 레지스
  6. 범용 레지스터
    1. 다양하고 일반적인 상황에서 자유롭게 사용할 수 있는 레지스터
  7. 스택 포인터
    1. 스택에 마지막으로 저장한 값의 위치를 저장하는 레지스터
  8. 변위 주소 지정 방식
    1. 상대 주소 지정 방식
      1. 오퍼랜드와 프로그램 카운터의 값을 더하여 유효 주소를 얻는 방식
    2. 베이스 레지스터 주소 지정 방식
      1. 오퍼랜드와 베이스 레지스터의 값을 더하여 유효 주소를 얻는 방식

3. 명령어 사이클과 인터럽트