안녕하세요 길벗 수험서 운영팀입니다.
미리 알아두어야 하는 사항들은
1. 주기억장치에 실행하려는 명령어가 저장되어 있다고 가정합니다.
2. PC(Program Counter)에는 실행해야 할 명령어의 (메모리상의)주소값이 저장되어 있습니다.
3. 명령어를 실행하기 위해서는 CPU의 명령 레지스터로 명령어에 포함된 명령 코드를 옮겨야 합니다.
❶ 프로그램 카운터에 저장된 주소(값)를 번지 레지스터에 옮깁니다.
- 실행할 명령어를 불러오기 위해 PC에 있는 주소값을 번지 레지스터에 저장합니다.
❷ 명령어를 주기억장치로부터 인출합니다.
- 번지 레지스터의 주소를 참조하여 메모리로 부터 해당 명령어를 불러와 CPU의 버퍼 레지스터에 저장합니다.
❸ 프로그램 카운터를 증가시킵니다.
- 현재 명령어를 수행하고 있으니 다음에 수행할 명령어의 주소값을 가리키기 위해 PC를 증가시킵니다.
(현재 수행하고 있는 명령어와 무관한 작업이나, 실행 순서 상에 필수적으로 들어가는 과정입니다.)
❹ 명령 코드를 명령 레지스터로 옮깁니다.
- CPU의 버퍼 레지스터에 저장된 명령어에서 '명령 코드' 부분을 명령 레지스터로 옮깁니다.
❺ 명령 레지스터의 내용을 해독하여 실행합니다.
- CPU가 실질적으로 명령을 실행하는 부분입니다.
행복한 하루 되세요 :)
-
관리자2019-01-25 10:17:15
안녕하세요 길벗 수험서 운영팀입니다.
미리 알아두어야 하는 사항들은
1. 주기억장치에 실행하려는 명령어가 저장되어 있다고 가정합니다.
2. PC(Program Counter)에는 실행해야 할 명령어의 (메모리상의)주소값이 저장되어 있습니다.
3. 명령어를 실행하기 위해서는 CPU의 명령 레지스터로 명령어에 포함된 명령 코드를 옮겨야 합니다.
❶ 프로그램 카운터에 저장된 주소(값)를 번지 레지스터에 옮깁니다.
- 실행할 명령어를 불러오기 위해 PC에 있는 주소값을 번지 레지스터에 저장합니다.
❷ 명령어를 주기억장치로부터 인출합니다.
- 번지 레지스터의 주소를 참조하여 메모리로 부터 해당 명령어를 불러와 CPU의 버퍼 레지스터에 저장합니다.
❸ 프로그램 카운터를 증가시킵니다.
- 현재 명령어를 수행하고 있으니 다음에 수행할 명령어의 주소값을 가리키기 위해 PC를 증가시킵니다.
(현재 수행하고 있는 명령어와 무관한 작업이나, 실행 순서 상에 필수적으로 들어가는 과정입니다.)
❹ 명령 코드를 명령 레지스터로 옮깁니다.
- CPU의 버퍼 레지스터에 저장된 명령어에서 '명령 코드' 부분을 명령 레지스터로 옮깁니다.
❺ 명령 레지스터의 내용을 해독하여 실행합니다.
- CPU가 실질적으로 명령을 실행하는 부분입니다.
행복한 하루 되세요 :)