CPU가 명령어를 처리하기 위해 반복하는 주기인 명령어 사이클(Instruction Cycle)이다.
CPU는 정해진 절차에 따라 작업을 처리한다.
핵심 단계들을 정리했다.
명령어 사이클의 4대 단계
- 인출 (Fetch): 메모리에서 실행할 명령어를 가져와 명령어 레지스터(IR)에 저장한다.
- 해독 (Decode): 가져온 명령어가 어떤 동작(더하기, 저장 등)을 의미하는지 분석한다.
-
실행 (Execute): 분석된 연산을 수행한다.
ALU가 동작하는 단계이다. -
저장 (Write-back): 연산 결과를 레지스터나 메모리에 기록하며 주기를 마무리한다.
특수 상황의 추가 사이클
상황에 따라 추가적인 단계가 포함된다.
- 간접 사이클 (Indirect): 명령어의 주소가 실제 데이터가 아닌 다른 주소를 가리키고 있어 메모리에 재접근해야 할 때 발생한다.
- 인터럽트 사이클 (Interrupt): 시스템의 긴급 요청이 발생했는지 확인하고 처리한다.
흐름 분석
CPU 내부에서 일어나는 이러한 단계들이 모여 소프트웨어를 실행시킨다.
명령어 사이클의 흐름을 이해하는 것은 컴퓨터의 동작 방식을 파악하는 중요한 출발점인 것 같다.