컴퓨터 구조 01 -제어장치와 명령어

2019. 6. 25. 00:12Reversing

cpu. 제어 장치&연산 장치

제어장치란?

: 제어 장치는 모든 장치가 유기적으로 동작할 수 있도록 하고, 

  주기억 장치에서 명령어를 가져와 해독하여 결과에 따라 제어 신호를 

  컴퓨터 시스템 내의 각 부분으로 전달하는 장치다.

 

제어 장치의 역할

1) 입력 장치에서 입력된 데이터를 기억 장소에 저장한다.

2) 기억 장치에 있는 데이터를 연산 장치로 이동시킨다.

3) 연산 장치에서 연산이 완료되면 그 결과를 다시 기억 장치로 이동시킨다.

4) 기억 장치에 저장된 데이터를 출력 장치로 이동시켜 출력시킨다.

 

 

제어 장치의 구성 요소

주소 레지스터(MAR: Memory Address Register)

: 주기억 장치에 명령이나 자료가 기억되어 있는 주소를 보관한다.

 

기억 레지스터(MBR: Memory Buffer Register)

: 명령어 계수기(PC)가 지정하는 주기억 장치의 내용을 임시 보관

 

명령어 레지스터(IR: Instruction Register)

: 현재 실행 중인 명령을 기억하는 레지스터로, 연산 코드와 주소부로 구성

 

명령어 계수기(PC: Program Counter)

: 다음에 실행할 명령어가 기억되어 있는 주기억 장치의 주소를 기억

 

명령어 해독기(Decoder)

: 명령어 레지스터의 명령 코드를 해독하여 필요한 실행 신호를 발생시킴.

 

주소 처리기(Address Processor)

: 피연산자를 인출할 경우 그 주소를 계산하거나 수행될 명령 순서가 바뀔 때

  다음 수행할 명령의 주소를 계산함.

 

순서기(Sequencer)

: 정해진 순성 따라 동작 순서를 제어

 

 

 

CPU 명령어 해독기

1.

: 명령어 주소 전송을 위해 명령어 계수기(pc)에 기억된 주소를 MAR으로 보낸다.

2.

: 주기억 장치의 내용을 임시 보관하고 있는 MBR에서 읽어온 명령어를

  명령어 레지스터(IR)에 저장하고, 명령어 계수기(PC)를 1 증가시킨다.

3.

: 명령어 코드(OP CODE) 필드와 주소 필드를 각각 해독기와 주소 처리기로 보낸다.

3-1.

: 주소 처리기는 연산 자료를 인출할 때 피연산자의 주소를 계산하며, 수행될

  명령어의 순서가 바뀔 때에는 다음에 수행될 명령어 주소를 계산하여 명령어 계수기에 기억 시킨다.

3-2.

: 제어 신호 발생기가 연산자를 해독하여 명령어 수행을 위한 제어 신호를 발생하며,

 수행 순서를 변경할 때에는 주소 처리기를 동작시켜 수행될 명령어 주소를 계산한다.

4.

: 다음 명령의 수행을 위하여 위 과정을 다시 시작한다.

  현재 명령어 레지스터에 있는 명령어의 수행이 끝나면 증가된 명령어

  계수기의 값을  MAR에 보내 다음 명령을 실행한다.

 

 

 

명령어(Instruction)

: 컴퓨터에게 어떤 일을 어떻게 수행해야 하는지를 나타내는 비트들의 집합으로 일정한 형식을 가지고 있다.

  명령어의 목적은 컴퓨터가 실행해야할 작업을 표시하고, 이 작업에 필요한 일련의 동작이나 자료들을 나타내는 것이다.

 

데이터 처리 명령어

: 산술 연산과 논리 연산, 비트 처리 명령 및 워드의 비트를 이동시키는 시프트 명령 등이 있다.

 

데이터 전송 명령어

: 내용의 변경 없이 한 장소에서 다른 장소로 데이터를 이동시킬 때 사용하는 명령

 

프로그램 제어 명령어

: 프로그램 카운터의 값을 변경할 수 있는 제어 기능을 가진 명령으로 분기, 서브 루틴 명령 등이 있다.

 

'Reversing' 카테고리의 다른 글

abex'crack 1 분석  (0) 2019.10.03
IA-32 Register 설명  (0) 2019.09.10
컴퓨터 메모리&레지스터 구조  (0) 2019.06.19