■ 명령어 처리
[명령어실행 순서]
1. 프로그램 카운터(PC)에 저장된 주소(값)를 메모리 주소 레지스터(MAR, 번지 레지스터)에 옮긴다.
2. 명령어를 주기억장치로부터 인출(Fetch) 한다.
3. 프로그램 카운터(PC) 값을 증가 시킨다.
4. 명령 코드를 명령 레지스터(IR)로 옮긴다.
5. 명령 레지스터(IR)의 내용을 해독(Decode)하여 실행한다.
[용어 정리]
* MAR(Memory Address Register) : 기억장치를 출입하는 데이터의 번지를 저장
* MBR(Memory Buffer Register) : 기억장치를 출입하는 데이터를 저장
* PC(Program Counter) : 다음에 실행할 명령의 번지 기억
* IR(Instruction Register) : 현재 수행 중인 명령의 내용 기억
* AC(Accumulator, 누산기) : 연산의 결과를 일시적으로 저장
■ 중앙처리장치 구성
(1) 제어 장치 (CU; Control Unit)
: 명령을 꺼내서 해독하고, 시스템 전체에 지시를 하는 것. 구성으로는 PC, IR, 부호기, 명령어 해독기, 번지 해독기 등
(제어기능)
(2) 연산 장치 (ALU; Arithmetic Logic Unit, 산술 논리 장치[연산 논리 장치])
: 실제 연산하는 장치. 구성으로는 AC, DR, Shift Register, Status Register, 가산기, 보수기, 오버플로 검출기 등
(연산기능)
(3) 레지스터 (Register)
: 'CPU 속'에서 일시적으로 값을 기억하는 임시 기억장소 (기억 기능)
- 메모리 중에서 속도가 가장 빠르다 -> 연산 수행 속도를 향상 시키기 위해 사용
- 새로운 데이터가 전송되면 기존에 있던 내용은 지워진다.
[용어 정리]
종류 | 특징 |
PC (Program Counter) |
(★) 다음에 실행할 명령의 번지를 기억한다. |
MAR (Memory Address Register) |
기억장치를 출입하는 데이터의 번지를 저장. 메모리 주소 레지스터 혹은 번지 레지스터라고 불린다 |
MBR (Memory Buffer Register) |
(★) 기억장치를 출입하는 데이터를 저장. 즉, 기억장치에서 참조한 데이터를 저장한다. 메모리 버퍼 레지스터 혹은 버퍼 레지스터라고 불린다 |
SR, PSWR (Program Status Register) |
컴퓨터 상태를 나타내는 레지스터 |
FR (Flag Register) |
레지스터 가운데 명령어를 수행할 때마다 결과가 0인지의 여부와 부호, 캐리 및 오버플로우의 발생 여부 등을 각각 '1비트'로 나타내는 레지스터 |
IR (Instruction Register) |
(★) 현재 수행 중인 명령의 내용을 기억한다. 명령어 레지스터라고 불린다. |
AC (Accumulator) |
(★) 연산의 결과를 일시적으로 저장 (연산의 중심이라고도 불림). 누산기라고 불린다. |
Index Register | 주소의 변경, 프로그램에서의 반복 연산의 횟수를 세는 레지스터 |
DR (Data Register) |
연산에 사용될 데이터를 기억하는 레지스터 |
Shift Register | 클럭 펄스에 의해 왼쪽 또는 오른쪽으로 1Bit 씩 자리를 이동시키는 레지스터 |
범용 레지스터 (General Purpose Register) |
범용으로 사용되어 작은 데이터를 일시적으로 저장하는 레지스터 |
베이스 레지스터 (Base Register) |
명령이 시작되는 시작 번지를 기억하고있는 레지스터 |
* 부호기 (Encoder) 해독된 명령어에 따라 각 장치로 보낼 제어 신호를 생성하는 회로 * 명령어 해독기 (Decoder) 명령 레지스터 (IR)에 있는 명령어를 해독하는 회로 * 번지 해독기 명령 레지스터에 있는 명령어가 가지고 있는 번지(직/간접 번지 등)를 해독하는 회로 * 가산기 (Adder) 덧셈을 수행하는 회로 * 보수기 (Complementor) 뺄셈의 수행을 위해 입력된 값을 보수로 변환하는 회로 * 오버플로 검출기 연산의 결과값이 컴퓨터가 표현할 수 있는 값을 초과하여 표현이 불가능한 상태를 검출하는 것 * PSW (Program Status Word, 프로그램 상태어) 오버플로, 인터럽트 등 시스템 내부의 순간순간 상태가 기록된 정보 * PSWR PSW를 저장하고 있는 레지스터 (상태를 저장하고있으므로 SR이라고도 불린다) * 인터럽트 (Interrupt) 어떤 특수한 상태 (예기치 않은 일, 응급사태)가 발생하면 현재 실행하고 있는 프로그램이 일시 중단되고, 그 특수한 상태를 처리하는 프로그램으로 옮겨져 처리한 후 다시 원래의 프로그램을 처리하는 현상 (ex) 숫자를 0으로 나누는 것 * 버스 (Bus) (★) 컴퓨터 내에 실행되는 명령어와 데이터가 이동되는 통로 |
'자격증 및 시험 > 정보처리' 카테고리의 다른 글
[컴퓨터] 주소지정방식 (1) | 2023.05.01 |
---|---|
[컴퓨터] 명령어 형식 (0) | 2023.05.01 |
[컴퓨터] 컴퓨터 시스템 구성 (0) | 2023.05.01 |
[전자계산] 자료 표현 방식 (0) | 2023.04.27 |
[전자계산] 자료 단위, 진법 변환, 보수 및 음수 표현 (0) | 2023.04.27 |