CPU 구성요소
- ALU : 계산장치
- 제어장치
- 여러개의 레지스터
클럭
- 컴퓨터의 모든 부품을 일사불란하게 움직일 수 있게 하는 시간 단위
레지스터
- CPU 내부의 작은 임시저장장치
- 프로그램 속 명령어 & 데이터는 실행 전후로 레지스터에 저장
레지스터 종류
1. 프로그램 카운터 : 메모리에서 가져올 명령어의 주소 저장
2. 명령어 레지스터 : 해석할 명령어 저장(방금 명령어에서 읽어들인 명령어)
3. 메모리 주소 레지스터 : 메모리 주소 저장
4. 메모리 버퍼 레지스터 : 메모리와 주고받을 값(데이터와 명령어) 저장
메모리
... | ... |
1101 | 1000번지 |
1111 | 1001번지 |
... | ... |
프로그램 카운터 (1000) -> 메모리 주소 레지스터(1000) -> 메모리 버퍼 레지스터(1101) -> 명령어 레지스터(1101)
프로그램 카운터 1 증가(1001)
ㄴ 마냥 증가하는건 아님*
*순차적인 실행 흐름이 끊기는 경우
- 특정 메모리 주소로 실행 흐름을 이동하는 명령어 실행 시 (JUMP, CONDITIONAL JUMP, CALL, RET)
- 인터럽트 발생 시
- 등등
5. 플래그 레지스터 : 연산 결과 또는 cpu 상태에 대한 부가적인 정보
6. 범용 레지스터 : 다양하고 일반적인 상황에서 자유롭게 사용
주소 지정에 사용 ▼
7. 스택 포인터 : 스택 주소 지정 방식에서 스택의 꼭대기를 가리키는 레지스터 (스택이 어디까지 차 있는지에 대한 표시)
메모리 안에 스택 영역 있음
8. 베이스 레지스터 : 기준 주소 저장 - 변위 주소 지정 방식에 사용
변위 주소 지정 방식 : 오퍼랜드 필드의 값(변위)과 특정 레지스터의 값을 더하여 유효 주소 얻기
'△ > Computer Engineering' 카테고리의 다른 글
빠른 CPU를 위한 설계 기법 (코어, 클럭) (0) | 2024.04.02 |
---|---|
명령어 사이클과 인터럽트 (interrupt) (0) | 2024.04.02 |
명령어 (0) | 2024.01.22 |
컴퓨터로 숫자 문자 표현하는 방법 (이진수, 십육진수, 아스키코드) (1) | 2024.01.19 |
컴퓨터 구조 (1) | 2024.01.04 |
댓글