CPU

Woong·2022년 12월 19일
0

컴퓨터 구조

목록 보기
4/15

CPU 내부

ALU

레지스터를 통해 피연산자를 받아들이고, 제어장치로부터 수행할 연산을 알려주는 제어신호를 받아들여 산술 연산, 논리 연산 등 다양한 연산을 수행하는 부품(계산기 같은 느낌..)

ALU의 처리과정

제어장치로부터 제어 신호를 받아들이기 + 레지스터로부터 피연산자 받아들이기 → 결과값을 레지스터에 일시적으로 저장하기(메모리로 저장하지 않는 이유? → 메모리로 가는 속도보다 CPU 내부에 있는 임시 저장장치인 레지스터에 가는 속도가 빠르기 때문) → 플래그를 플래그 레지스터로 보내기

플래그 레지스터(연산 결과에 대한 추가적인 정보, 참고 정보를 저장하는 레지스터)에 저장되는 플래그 종류

부호 플래그 → 연산 결과의 부호를 나타냄
제로 플래그 → 연산 결과가 0인지 여부를 나타냄
캐리 플래그 → 연산 결과 올림수나 빌림수가 발생했는지를 나타냄
오버플로우 플래그 → 오버플로우(연산 결과가 연산 결과를 담을 레지스터 크기보다 큰 상황)가 발생했는지를 나타냄
인터럽트 플래그 → 인터럽트가 가능한지를 나타냄
슈퍼바이저 플래그 → 커널 모드로 실행 중인지, 사용자 모드로 실행 중인지 나타냄(커널 모드와 사용자 모드에 대한 설명은 운영체제 부분에서 나옴)

제어장치와 제어신호

제어장치는 제어 신호를 내보내고, 명령어를 해석하는 부품
제어신호는 컴퓨터 부품들을 관리하고 작동시키기 위한 일종의 전기 신호

제어장치의 처리과정

  1. 제어장치는 클럭 신호를 받아들인다.
    → 클럭 : 컴퓨터의 모든 부품을 일사불란하게 움직이게 하는 시간 단위
  2. 제어장치는 '해석해야 할 명령어'를 받아들인다.
  3. 제어장치는 플래그 레지스터 속 플래그 값을 받아들인다.
  4. 제어장치는 시스템 버스, 그중에서 제어 버스로 전달된 제어 신호를 받아들인다.

출처 : 강민철님 , ⌜혼자 공부하는 컴퓨터구조 + 운영체제⌟, 한빛미디어, 2022, ~111쪽

profile
공부하는 주니어 개발자

0개의 댓글