[H/W] 여러가지 CPU 레지스터의 종류와 기능


 레지스터란? 

레지스터는 CPU내부에서 처리할 명령어나 연산의 중간 값 등을 일시적으로 기억하는 임시 기억장소입니다. 컴퓨터의 프로세서 내에서 자료를 보관하는 아주 빠른 기억장소라고 생각하면 되며 일반적으로 현재 계산을 수행중인 값을 저장하는데 사용됩니다. 레지스터는 메모리 계층의 최상위에 위치하면서 가장 빠른 속도로 접근이 가능하게끔 설계되어있는 메모리입니다. 


 여러가지 레지스터의 종류 

프로그램 카운터, 프로그램 계수기 

다음번에 실행할 명령어의 번지를 기억하는 레지스터로 분기 명령이 실행되는 경우 그 목적지 주소로 갱신됩니다.


명령 레지스터 

현재 실행중인 명령의 내용을 기억하는 레지스터 입니다.


누산기 

연산된 결과를 일시적으로 저장하는 레지스터로 연산의 중심이 되는 레지스터입니다.


상태 레지스터(Status Register), 플래그 레지스터 

오버플로, 언더플로, 자리올림, 계산상태, 인터럽트 등의 PSW를 저장하고 있는 레지스터입니다.

(시스템 내부의 순간순간의 상태가 기록된 정보를 PSW라고 합니다.)


메모리 주소 레지스터

기억장치를 출입하는 데이터의 번지를 기억하는 레지스터입니다.


메모리 버퍼 레지스터 

기억장치를 출입하는 데이터가 잠시 기억되는 레지스터로 CPU가 데이터를 처리하기 위해서는 반드시 거쳐야 하는 레지스터입니다.


베이스 레지스터 

명령이 시작되는 시작 번지를 기억하고 있는 레지스터입니다.


인덱스 레지스터 

주소의 변경, 서브루틴 연결 및 프로그램에서의 반복 연산의 횟수를 세는 레지스터이며 프로그래머가 내용을 변경할 수 도 있습니다.


데이터 레지스터 

연산에 사용될 데이터를 기억하는 레지스터입니다.


시프트 레지스터 

저장된 값을 왼쪽 또는 오른쪽으로 1Bit씩 자리를 이동시키는 레지스터이며 2배 길이 레지스터라고도 합니다.


메이저 스테이터스 레지스터(Major Status Register) 

CPU의 메이저 상태를 저장하고 있는 레지스터입니다. (메이저 상태란 CPU의 현재 상태를 말하는것으로 인출, 간접, 실행, 인터럽트 상태가 있습니다.)


댓글(0)

Designed by JB FACTORY