본문 바로가기
컴퓨터구조

[혼자 공부하는 컴퓨터구조] 04-2. 레지스터

by Lizardee 2023. 7. 27.
반드시 알아야 할 레지스터

▶ 프로그램 카운터(PC; Program Counter)
: 메모리에서 읽어들일 명령어의 주소를 저장하는 레지스터
 
▶ 명령어 레지스터(IR; Instruction Register)
: 메모리에서 읽어들인 명령어의 주소를 저장하는 레지스터
--> 제어장치: 명령어 레지스터 속 명령어를 받아들이고 이를 해석한 뒤, 제어 신호를 내보낸다.
 
▶ 메모리 주소 레지스터(MAR; Memory Address Register)
: 메모리 주소를 저장하는 레지스터
--> CPU: 읽어들이고자 하는 주소 값을 주소 버스로 보낼 때, 메모리 주소 레지스터를 거치게 된다.
 
▶ 메모리 버퍼 레지스터(MBR; Memory Buffer Register)
: 메모리와 주고받을 값(데이터, 명령어)을 저장하는 레지스터
--> 메모리에 쓰고 싶은 값, 메모리로부터 전달받은 값은 메모리 버퍼 레지스터를 거치게 된다.
 

 
▶ 범용 레지스터(general purpose register)
: 다양하고 일반적인 상황에서 자유롭게 사용할 수 있는 레지스터, 데이터/주소를 모두 저장할 수 있다.
 
▶ 플래그 레지스터(flag register)
: ALU 연산 결과에 따른 플래그를 저장하는 레지스터
 
▶ 스택 레지스터
 
▶ 베이스 레지스터
 


특정 레지스터를 이용한 주소 지정 방식(1): 스택 주소 지정 방식

▶ 스택 주소 지정 방식
: 스택(stack)과 스택 포인터(stack pointer)를 이용한 주소 지정 방식

스택 주소 지정 방식

  • 스택(stack): 한쪽 끝이 막혀 있는 통과 같은 저장 공간(메모리 내의 스택 영역)
  • 스택 포인터(stack pointer): 스택의 꼭대기를 가리키는 레지스터

 

특정 레지스터를 이용한 주소 지정 방식(2): 변위 주소 지정 방식(displacement addressing mode)

▶ 변위 주소 지정 방식(displacement addressing mode)
: 오퍼랜드 필드의 값(변위)과 특정 레지스터의 값을 더하여 유효 주소를 얻어내는 주소 지정 방식

변위 주소 지정 방식

1) 상대 주소 지정 방식(relative addressing mode)
: 오퍼랜드 + 프로그램 카운터(PC; Program Counter) 값 --> 유효 주소
 
2) 베이스 레지스터 주소 지정 방식(base-register addressing mode)
: 오퍼랜드 + 베이스 레지스터(base-register) 값 --> 유효 주소