2주차#
C04#
ALU는 레지스터로부터 피연산자를 받아들이고, 제어장치로부터 제어 신호를 받아들여요.
ALU는 연산 결과와 플래그를 내보내요.
제어장치는 클럭, 현재 수행할 명령어, 플래그, 제어 신호를 받아들여요.
제어장치는 CPU 내부와 외부로 제어 신호를 내보내요.
프로그램 카운터는 메모리에서 가져올 명령어의 주소, 명령어 레지스터는 해석할 명령어를 저장해요.
메모리 주소 레지스터는 메모리의 주소, 메모리 버퍼 레지스터는 메모리와 주고받을 데이터를 저장해요.
범용 레지스터는 데이터와 주소를 모두 저장하고, 플래그 레지스터는 연산 결과 혹은 CPU 상태에 대한 부가 정보를 저장해요.
스택 포인터는 스택 최상단의 위치를 저장해요.
베이스 레지스터에 저장된 주소는 기준 주소의 역할을 해요.
명령어 사이클은 하나의 명령어가 처리되는 주기로, 인출, 실행, 간접, 인터럽트 사이클로 구성되어 있어요.
인터럽트는 CPU의 정상적인 작업을 방해하는 신호예요.
인터럽트의 종류에는 예외와 하드웨어 인터럽트가 있어요.
인터럽트 서비스 루틴은 인터럽트를 처리하기 위한 동작들로 이루어진 프로그램이에요.
C05#
클럭 속도가 높은 CPU는 빠르게 작동해요.
코어란 CPU 내에서 명령어를 실행하는 부품이에요.
멀티코어 프로세서란 여러 개의 코어를 포함하는 CPU를 말해요.
스레드에는 하드웨어적 스레드와 소프트웨어적 스레드가 있어요.
멀티스레드 프로세서란 하나의 코어로 여러 개의 명령어를 동시에 실행할 수 있는 CPU를 말해요.
명령어 파이프라이닝은 동시에 여러 개의 명령어를 겹쳐 실행하는 기법이에요.
슈퍼스칼라는 여러 개의 명령어 파이프라인을 두는 기법이에요.
비순차적 명령어 처리 기법은 파이프라인의 중단을 방지하기 위해 명령어를 순차적으로 처리하지 않는 기법이에요.
ISA는 CPU의 언어이자 하드웨어가 소프트웨어를 어떻게 이해할지에 대한 약속이에요.
CISC는 복잡하고 다양한 종류의 가변 길이 명령어 집합을 활용해요.
RISC는 단순하고 적은 종류의 고정 길이 명령어 집합을 활용해요.
숙제#
p. 125의 확인 문제 2번(필수)#
정답:
- 플래그 레지스터
- 프로그램 카운터
- 범용 레지스터
- 명령어 레지스터
p. 155의 확인 문제 4번(필수)#
정답: 코어
Ch.05(05-1) 코어와 스레드, 멀티 코어와 멀티 스레드의 개념 정리(선택)#
코어란 CPU 내에서 명령어를 실행하는 부품이에요.
스레드에는 하드웨어적 스레드와 소프트웨어적 스레드가 있어요.
멀티코어 프로세서란 여러 개의 코어를 포함하는 CPU를 말해요.
멀티스레드 프로세서란 하나의 코어로 여러 개의 명령어를 동시에 실행할 수 있는 CPU를 말해요.
It isn't where you come from, it's where you're going that counts.
— Ella Fitzgerald