Page 256 고등학교 디지털 논리 회로 교과서
P. 256









② 명령 디코더

ALU 장치의 일부분으로 메모리에 저장되어 있는 2진 명령을 읽고 해독하는 기능 메모리 어드레스 레지스터
메모리의 주소선이 연결되어 있으
을 수행한다.
며, 명령이나 데이터를 메모리로부
터 읽어 내거나 써넣기 위한 어드레
스(주소)를 저장하는 레지스터를 말
③ 레지스터 한다.
레지스터(register)는 데이터와 명령을 일시적으로 기억시키는 곳을 말한다. 레 메모리 버퍼 레지스터

지스터에는 메모리 어드레스 레지스터(MAR, memory address register), 메모 메모리의 데이터 버스가 연결되어
있으며, 메모리로부터 읽어 내거나
리 버퍼 레지스터(MBR, memory buffer register), 메모리 데이터 레지스터, 누산 써넣기 위한 명령이나 데이터를 저
장하는 레지스터이다.
기(ACC, accumulator), 프로그램 카운터(PC, program counter), 명령 레지스터
누산기
(IR, instruction register), 스택 포인터(SP, stack pointer), 상태 레지스터(status
산술 논리 연산 장치(ALU)에서 연
register), 범용 레지스터(general purpose register)로 구성된다. 산된 결과를 저장하거나, ALU의 입
력 레지스터로 사용하는 레지스터
이다.
④ 제어 장치
프로그램 카운터
명령어를 순차적으로 주기억 장치로부터 꺼내어 해독한 뒤 해독된 명령에 따라 각 다음에 수행할 명령의 주소를 저장
하는 레지스터이다.
장치에 필요한 제어 신호를 주는 기능을 담당한다. 프로그램 카운터, 명령 디코더, 번
명령 레지스터
지 레지스터, 번지 디코더로 구성된다.
주기억 장치에서 인출한 명령을 일
시적으로 저장하는 레지스터이다.
⑤ 버스 스택 포인터
마이크로프로세서는 장치들을 서로 연결한 스택 포인터가 가리키는 곳까지는
데이터가 채워진 영역이고, 그 이후
연결선들을 모아 놓은 신호 회선이 있는데 이 부터 스택 끝까지는 비어 있는 영역
이다.
를 버스라고 한다. 버스는 내부 버스와 외부 버
상태 레지스터
스로 구분할 수 있다. 내부 버스는 CPU 내에서
누산 결과 오버플로(overflow), 누산
의 전달 기능을 담당하고 외부 버스는 CPU와 기의 0 혹은 1 상태, 누산기의 수치
그림 Ⅶ-2 마이크로프로세서의 버스 의 부호 상태, 누산기로부터 캐리 등
외부에 연결된 메모리, 입출력 장치 등을 주변 의 상태를 표시하는 레지스터이다.
장치들 사이의 전달 기능을 담당하는 것으로 데이터 버스와 어드레스(주소) 버스, 그
범용 레지스터
리고 제어 버스로 구분된다. 필요에 따라 누산기, 번지 레지스
터, 인덱스 레지스터 등의 기능을
• 어드레스 버스: 메모리의 주소를 CPU가 지정하는 메모리의 주소가 이동되는 단 수행하는 다목적 레지스터이다.

방향성 회선이다.
• 데이터 버스: 마이크로프로세서와 입출력 장치 사이에 데이터를 주고받을 수 있
는 양방향성 회선으로 한 번에 전송할 수 있는 데이터 비트 수를 결정한다. CPU

를 8비트, 16비트, 32비트로 구분할 때의 각 비트 수는 데이터 버스의 회선수를
의미한다. 즉, 16비트 CPU의 데이터 버스는 16개의 신호 회선을 갖는다.
• 제어 버스: 마이크로프로세서에 의해 제공되는 타이밍 신호인 제어 신호가 이동

되는 통로이다.

254 Ⅶ. 디지털 논리 회로의 응용
   251   252   253   254   255   256   257   258   259   260   261