Search

04-1 ALU와 제어장치

Last update: @1/7/2023
혼자 공부하는 컴퓨터구조 + 운영체제

컴퓨터 구조

01 컴퓨터 구조 시작하기

02 데이터

03 명령어

04 CPU의 작동 원리

05 CPU 성능 향상 기법

06 메모리와 캐시 메모리

07 보조기억장치

08 입출력장치

ALU와 제어장치

ALU : 계산을 위한 부품. 레지스터로부터 피연산자를, 제어장치로부터 제어신호를 받아 계산 결과와 플래그를 내보냄
플래그 : 연산 결과에 대한 추가적인 상태. CPU가 프로그램을 실행하는 도중 반드시 기억해야 하는 일종의 참고 정보. 플래그 레지스터에 저장됨
대표적인 종류
부호 플래그 : 연산한 결과의 부호를 나타냄
제로 플래그 : 연산 결과자가 0인지 여부를 나타냄
캐리 플래그 : 연산 결과 올림수나 빌림수가 발생했는지를 나타냄
오버플로우 플래그 : 오버플로우가 발생했는지를 나타냄. 연산 결과가 연산 결과를 담을 레지스터보다 큰 상황을 오버플로우(overflow)라고 함
인터럽트 플래그 : 인터럽트가 가능한지를 나타냄
슈퍼바이저 플래그 : 커널 모드로 실행중인지, 사용자 모드로 실행중인지를 나타냄
제어장치 : 컴퓨터 부품들을 관리하고 작동시키기 위한 일종의 전기 신호인 제어신호를 내보내고 명령어를 해석하는 부품
제어장치가 받아들이는 정보
클럭(clock) : 컴퓨터의 모든 부품이 박자에 맞춰 움직이는 시간 단위. 컴퓨터 부품들은 클럭이라는 박자에 맞춰 작동할 뿐 한 박자(주기)마다 작동하는 것은 아님. 즉, 하나의 명령어가 여러 클럭에 걸쳐 실행될 수 있음
해석해야 할 명령어 : 제어장치는 명령어 레지스터에 저장된 명렁어를 받아들여 해석한 뒤 제어신호를 발생시켜 컴퓨터 부품들에 수행해야 할 내용을 알려줌
플래그 레지스터 속 플래그 값 : 제어장치는 플래그 레지스터 속 플래그 값을 받아들임
시스템 버스 중에서 제어 버스로 전달된 제어 신호 : CPU뿐만 아니라 입출력장치를 비롯한 외부 장치도 제어 신호를 발생시킬 수 있음. 제어장치는 이런 제어 신호를 받아들이기도 함
제어장치가 CPU 내부에 전달하는 제어신호
ALU에 전달하는 제어신호
레지스터에 전달하는 제어신호 : 레지스터 간에 데이터를 이동시키거나 레지스터에 저장된 명령어를 해석하기 위해