Page 49 - 컴퓨터구조(프로그래밍 관점에서 바라보는)도서 미리보기
P. 49
CHAPTER 6? 컴퓨터 하드웨어 197
⑵? 레지스터의 종류
레지스터는 다양한 용도로 사용될 수 있는 ‘범용 레지스터(general 몇몇 레지스터는 사용 목
purpose registers)’와 ‘특수 목적 레지스터(special purpose registers)’로 구 적이 정해져 있는 경우가
분할 수 있다. 이와 관련된 자세한 설명은 ‘7장. 기계어 프로그래밍을 통한 있다. 이들을 특수 목적 레
컴퓨터 구조 이해’ 부분에서 자세하게 살펴보자. 지스터라고 한다.
yyPC(program counter): 다음에 실행할 명령어의 주소를 기억하는 레지스
터. 분기(branch) 명령어가 실행되는 경우 PC가 분기의 목적지 주소로 갱신
된다.
yyIR(Instruction register): 현재 실행 중인 명령어를 기억하는 레지스터.
yyAC(Accumulator): 연산 결과를 일시적으로 저장하는 레지스터.
yyMAR(Memory address register): 메인 메모리에 읽기/쓰기를 하는 주소를
저장하는 레지스터.
yyMBR(Memory buffer register): 메인 메모리에 읽기/쓰기를 하는 데이터를
저장하는 레지스터.
yyStatus register(상태 레지스터): CPU 내부의 상태를 저장하는 레지스터(오
버플로우, 언더플로우, 캐리, zero, 음수 등의 상태를 저장)로써 프로그램의
실행 제어와 밀접한 관련이 있음).
yyBase register(베이스 레지스터): 간접 주소 지정 방식에서 주소의 시작 번지
를 기억하는 레지스터.
yyIndex register(인덱스 레지스터): 프로그램에서 반복 연산의 횟수나 인덱싱
을 위해서 사용되는 레지스터.
yyShift register(쉬프트 레지스터): 저장된 값을 왼쪽/오른쪽으로 1비트씩 자리
를 이동하는 레지스터