레지스터의 역할과 종류

DanChu 🌟·2022년 8월 6일
0

레지스터의 역할

레지스터는 CPU 내부에서 처리할 명령어나 연산의 중간 값 등의 데이터를 일시적으로 저장하고 전달한다. 컴퓨터의 프로세서 내에서 자료를 보관하는 아주 빠른 기억장소이며, 일반적으로 현재 계산을 수행중인 값을 저장하는데 사용된다. 메모리 계층의 최상위에 위치하며, 속도가 가장 빠른만큼 비싸기때문에 당장 꼭 사용해야하는 값들만 이곳에 저장된다.


레지스터의 종류

DR, Data Register

마이크로 프로세서, MCU에서 주변 페리페럴 장치들로 전달되는 데이터를 임시 저장하는데 사용

AR, Address Register

I/O AR은 특정 IO 입출력 장치의 주소를 지정하는데 사용

PC, Program Counter

IP(Instruction Pointer, 명령어 포인터)라고도 부름. 이 레지스터는 프로세서가 수행할 다음 명령어의 주소를 일시적으로 저장하는데 사용. 명령을 가져오면 IP값이 증가하며 이 레지스터는 항상 다음에 가져올 명령의 주소를 가리키거나 혹은 현재의 명령의 주소를 유지.

IR, Instruction Register

명령어 레지스터
주기억장치에서 수행할 명령을 가져오면 명령어 레지스터에 저장.
제어장치는 이 레지스터의 지시를 받아 컴퓨터의 해당 구성요소로 신호를 전송하고 명령을 해석하여 실행

MAR, Memory Address Register

CPU가 데이터를 읽거나 쓰려는 메모리 주소를 일시적으로 저장. CPU가 메모리에 일부 데이터를 저장하려고 하거나 메모리에서 데이터를 읽을 때 필요한 메모리 위치의 주소를 MAR에 저장.

MBR, Memory Buffer Register

메모리에 읽거나 쓰려는 데이터 또는 명령을 일시적으로 저장. 이 레지스터에 배치된 명령은 명령어 레지스터, IR, 로 전송되고, 데이터의 내용은 누산기 레지스터, AR, 또는 IO 레지스터로 전송. 즉, 이 레지스터는 메모리를 읽거나 메모리에 쓰려는 데이터 또는 명령을 저장하는데 사용

PSR, Program Status Register

프로그램 상태 플래그 같은 상태값을 저장. 플래그 외, 프록램 카툰터에 저장된 주소정보도 저장.


references

0개의 댓글