Computer Science/컴퓨터 구조

3. 명령어의 종류

728x90
반응형

 < 기능에 따라 분류 >

1) 데이터 처리 명령 (산술, 논리, 시프트 명령)

산술명령 : 기본적인 산술 연산은 가산, 감산, 곱셈, 나눗셈이 사칙연산이다. 대부분의 컴퓨터는 사칙 연산을 하는 산술 명령을 사용하지만 소형 컴퓨터는 가산(또는 감산)명령만 사용하기도 한다. 이 경우 곱셈이나 나눈셈은 소프트웨어적인 서브루틴을 이용하여 실행한다.

Increment(레지스터나 기억장치내용을 1 증가) 

Decrement 

Add / Subtrack / Multiply / Divide

Add with carry / Subtrack with borrow / Negate(2's complement)

 

㉡ 논리연산 및 비트처리명령 : 논리연산명령은 피연산자를 비트별 처리한다. 논리연산 명령을 사용하여 비트를 변경하거나 비트열을 0으로 하거나 또는 새로운 비트를 피연산사에게 넣을 수 있다.

Clear(피연산자의 모든비트 0)

Complement(피연산자의 1의 보수)

AND(피연산자의 특정 부분을 0(mask)) / OR(피연산자의 일부분을 1) / XOR(특정 부분의 보수) 

Clear carry / Set carry / Complement carry / Enable interrupt / Disable interrupt 

 

㉢ 시프트 명령 : 시프트 명령은 논리시프트, 산술 시프트, 로테이트 등이 있다.

Logical shift : 우츨시프트시 왼쪽 맨끝(LSB), 좌측 시프트시 오른쪽 맨끝(MBS)에 0을 삽입

Arithmetic shift : 부호와 2의 보수의 규칙에 따라 시프트되며 부호비트가 보존

Rotate : 시프트되어 나간 비트가 다른 한끝으로 삽입

Rotate through carry : 캐리를 포함하여 로테이트

 

2) 데이터 전송 명령 (기억장치와 레지스터 사이의 전송 명령)

데이터 전송명령은 데이터를 내용 변경없이 한 장소에서 다른 장소로 위치를 옮긴다. 일반적으로 기억장치와 레지스터, 레지스터와 입출력장치, 레지스터간의 데이터 전송이다.

Load : 기억장치에서 레지스터로의 정보전송

Store : 레지스터에서 기억장치로의 정보전송

Move : 레지스터간의 정보전송

Exchange : 레지스터 사이 또는 리지스터와 기억장치사이의 정보교환

Input / Output : 레지스터와 입출력장치 사이의 정보전송

Push / Pop : 레지스터와 스택 사이의 정보전송

 

3) 프로그램 제어 명령 (상태 조건을 검사하는 명령과 프로그램 제어 명령)

 

4) 입출력 명령

 


 

< 명령은 피연산자의 위치에 따라 분류 >


1) 기억장치 참조명령(MRI) -메모리 참조명령어

 1

 opcode

Adress 

 

2) 레지스터 참조 명령(RRI) - 메모리 비참조 명령령

 0

1 1 1

register operation 

 

3) 입출력 명령(IOI) - 메모리 비참조 명령어 

 1

1 1 1

I/O operation

 

모드(1bit)

 연산(3bit)

주소(12) 

               

            
 

 


 

참고 : [컴퓨터 구조] 김천,이형식,임인선 공저 (현우사)

728x90
반응형