코딩공부/컴퓨터구조
Chapter04. CPU의 작동 원리
표자
2024. 10. 24. 09:41
728x90
반응형
Chapter04. CPU의 작동 원리
- ALU는 계산하는 부품으로 레지스터를 통해 피연산자를 받아들이고,
- 제어장치로부터 수행할 연산을 알려주는 제어신호를 받아들입니다.
- 오버플로우: 연산 결과가 연산 결과를 담을 레지스터보다 큰 상황
- 플래그: 연산 결과에 대한 추가적인 상태 정보
- 제어장치
- 첫째, 제어장치는 클럭 신호를 받아들입니다 (클럭: 시간단위)
- 둘째, 제어장치는 ‘해석해야 할 명령어’를 받아들입니다
- 셋째, 제어장치는 플래그 레지스터 속 플래그 값을 받아들입니다
- 넷째, 제어장치는 시스템 버스, 그중에서 제어 버스로 전달된 제어 신호를 받아들입니다
- 제어장치는 CPU 내부와 외부로 제어 신호를 보냅니다
- 레지스터
- 프로그램 카운터: 메모리에서 가져올 명령어의 주소(=명령어 포인트)
- 명령어 레지스터: 해석할 명령어, 이를 받아 들이고 해석한 뒤 제어신호 보냄
- 메모리 주소 레지스터: 메모리 주소를 저장하는 레지스터
- 메모리 버퍼 레지스터: 메모리와 주고받을 값을 저장하는 레지스터
- 범용 레지스터: 일반적인 상황에서 자유롭게 사용
- 플래그 레지스터: 연산 결과 또는 CPU 상태에 대한 부가적인 정보를 저장
- 특정 레지스터를 이용한 주소 지정 방식
- 스택 주소 지정 방식: 스택과 스택 포인터(스택의 최상단의 위치)를 이용한 주소 지정 방식
- 변위 주소 지정 방식: 오퍼랜드 필드의 값과 특정 레지스터의 값을 더하여 유효 주소를 얻어내는 주소 지정 방식 (상대 주소 지정 방식, 베이스 레지스터 주소 지정 방식)
- 명령어 사이클: 하나의 명령어를 처리하는 정형화 된 흐름
- 인출 사이클, 실행 사이클, 간접 사이클
- 인터럽트: 흐름에 따라 처리하다 간혹 흐름이 끊어지는 상황
- 동기 인터럽트: CPU에 의해 발생(예외적인 상황, 프로그래밍 오류 등)
- 비동기 인터럽트: 입출력장치에서 발생(하드웨어 인터럽트)
728x90
반응형