[컴퓨터 구조] 레지스터 (CPU)
2023. 3. 13. 23:40ㆍ기술 창고/CS 지식
728x90
반응형
SMALL
레지스터
- CPU 내부의 작은 임시저장장치
- 프로그램 속 명령어 와 데이터는 실행 전후로 레지스터에 저장된다.
- 레지스터는 다양한 레지스터들이 존재하고 각자 다른 역할을 가진다.
- 프로그램 카운터
- 메모리에서 가져올 명령어의 주소 (메모리에서 읽어들일 다음 명령어 주소)
- 명령어 레지스터
- 해석할 명령어 (CPU에 읽어들인 명령어)
- 메모리 주소 레지스터
- 메모리 주소
- 메모리 버퍼 레지스터
- 메모리와 주고받을 값 (데이터와 명령어)
- 프로그램 카운터
- 프로그램 카운터 ~ 레지스터 간의 흐름 과정
- 프로그램 카운터에서 수행될 다음 명령어 주소를 가져온다.
- 프로그램 카운터에서 가져온 다음 명령어 주소를 메모리 주소 레지스터에 그대로 복사한다.(저장된다.)
- 주소 버스를 통해 메모리 주소 레지스터에 저장되어있는 다음 명령어 주소로 찾아간다.
- 다음 명령어 주소에 저장되어있는 데이터를 데이터 버스를 통해 메모리 버퍼 레지스터에 저장한다.
- 메모리 버퍼 레지스터에 데이터를 저장함과 동시에 프로그램 카운터에서는 그 다음 수행될 명령어 주소를 가져온다.
- 메모리 버퍼 레지스터에 저장된 데이터 혹은 명령어를 명령어 레지스터에 읽어들인다.
- # 보통 프로그램 카운터와 레지스터로 인한 동작은 순차적으로 실행되나 JUMP, CONDITIONAL JUMP, CALL 과 같은 명령어를 수행하여 실행 흐름을 이동할 수 있다.
- 플래그 레지스터
- 연산 결과 또는 CPU 상태에 대한 부가적인 정보
- 범용 레지스터
- 다양하고 일반적인 상황에서 자유롭게 사용가능한 레지스터
- 스택 포인터
- # 스택 주소 지정 방식 : 스택과 스택 포인터를 이용한 주소 지정 방식
- 스택 포인터는 스택 자료구조 형태에서 가장 맨 위에 있는 데이터를 가리키는 포인터
- 베이스 레지스터
- 기준 주소 저장
- 베이스 레지스터 주소 지정 방식 : 오퍼랜드 필드의 값과 베이스 레지스터의 값을 더하여 유효 주소를 얻는 방식
- 변위 주소 지정 방식 : 오퍼랜드 필드의 값과 특정 레지스터의 값을 더하여 유효 주소를 얻는 방식
- 상대 주소 지정 방식 : 오퍼랜드 필드의 값과 프로그램 카운터의 값을 더하여 유효 주소를 얻는 방식
- # 스택 포인터와 베이스 레지스터는 특정한 주소를 지정할 떄 사용된다.
- 플래그 레지스터
728x90
반응형
LIST
'기술 창고 > CS 지식' 카테고리의 다른 글
[컴퓨터 구조] 빠른 CPU를 위한 설계 기법 (0) | 2023.03.16 |
---|---|
[컴퓨터 구조] 명령어 사이클과 인터럽트 (0) | 2023.03.16 |
[컴퓨터 구조] ALU와 제어장치 (CPU) (0) | 2023.03.13 |
[컴퓨터 구조] 언어의 컴파일 과정 (0) | 2023.03.10 |
[컴퓨터 구조] 명령어의 구조 (0) | 2023.03.10 |