명령어 형식

IT 위키

Instruction Format

하나의 명령어를 구성하는 비트들을 연산 코드와 피연산자 자리로 나눈 배치

  • 연산 코드(Operation Code, OP Code) : 수행할 동작의 종류를 지정한다.
  • 오퍼랜드(Operand) : 연산의 대상이 되는 자료나 그 자료가 있는 주소를 지정한다.
  • 주소 지정 방식(Mode) : 오퍼랜드를 해석하는 방법을 지정한다.

오퍼랜드 개수에 따른 분류

[편집 | 원본 편집]
형식 오퍼랜드 설명
0-주소 명령어
Zero-Address
없음 오퍼랜드 자리 없이 연산자만 쓴다. 자료를 스택에서 꺼내 연산하고 결과를 다시 스택에 넣는다. 후위 표기법으로 변환해야 처리할 수 있다.
1-주소 명령어
One-Address
1개 오퍼랜드 하나와 누산기를 연산한다. 결과는 누산기에 남는다.
2-주소 명령어
Two-Address
2개 가장 널리 쓰인다. 연산 결과가 오퍼랜드 중 한쪽에 저장되므로 그 자리의 원래 값은 사라진다.
3-주소 명령어
Three-Address
3개 두 오퍼랜드를 연산해 세 번째 자리에 저장한다. 원래 값이 보존되지만 명령어 길이가 길어진다.
  • 오퍼랜드가 적을수록 명령어 길이가 짧아 기억 공간을 덜 쓰지만,
 같은 일을 하는 데 필요한 명령어 수가 늘어난다.
  • 오퍼랜드가 많을수록 프로그램이 짧아지지만 명령어 하나가 길어지고
 해독·실행 시간이 늘어난다.

같이 보기

[편집 | 원본 편집]