DevGang

[CA-09] 명령어 (Instruction) 본문

정보처리/CA

[CA-09] 명령어 (Instruction)

별천랑 2021. 2. 6. 16:07

1. 명령어(Instruction)의 구성

  • 연산자 부(Op-Code, Operation Code 부) = 실행할 명령이 들어 있음, 연산자 부의 비트수가 n Bit 일 때 2의 n승 개의 명령어(연산자) 수행 가능
  • 자료부(어드레스 필드, 주소부) = 실제 데이터에 대한 정보를 표시하는 부분
  • 어드레스 필드의 크기 = 최대 메모리 용량
  • <예> OP-Code 6bit이고 어드레스 필드 16bit 일 때, 최대 메모리 용량은? 64K Word (2의 16승 = 65536 = 64K

2. 연산자(OP-Code, Operation Code)의 기능

- 함수 연산 기능

  • 중앙처리장치에서 데이터를 처리하는 기능
  • 산술, 논리 연산 명령(ADD, AND, CPA, CPC, CLC, ROR, ROL 등)

- 자료 전달 기능

  • 중앙처리장치와 기억장치 사이에서 정보를 교환하는 기능
  • Load : 메모리의 내용을 CPU로 전달
  • Store : CPU의 정보를 메모리에 기억
  • Move : 특정 레지스터의 내용을 다른 레지스터로 옮기는 명령
  • Push, Pop : 스택에 자료를 저장, 인출하는 명령

- 제어 기능

  • 프로그램의 수행 흐름을 제어하는 데 사용
  • 무조건 분기 명령 : GOTO, JMP(Jump)
  • 조건 분기 명령 : IF, SPA, SNA, SZA
  • 부 프로그램 호출 및 복귀 : Call, Return

- 입, 출력 기능

3. 명령어 형식

- 3 주소 명령어

  • Operand 부가 3개로 구성
  • 연산 후에 입력자료가 변하지 않고 보존됨
  • 전체 명령어를 읽어오는 시간 단축
  • 프로그램의 길이가 짧아짐
  • 하나의 명령을 수행하기 위해서 최소한 4번 기억 장소에 접근해야 하므로 전체적인 수행 시간 길어짐

- 2 주소 명령어

  • Operand 부가 2개로 구성
  • 3-주소 명령어에 비해 길이가 짧음
  • 계산 결과를 시험할 필요가 있을 때 기억장치에서 기억될 뿐만 아니라 CPU에도 남아 있어 CPU 내에서 직접 시험이 가능하므로 시간이 절약됨. 전체 프로그램의 길이가 길어짐

- 1 주소 명령어

  • Operand 부가 1개로 구성
  • 반드시 누산기(Accumulator)가 필요한 주소 지정방식
  • 모든 명령은 누산기에 기억되어있는 자료를 사용함
  • 예> C = A + B

- 0 주소 명령어

  • Operand 부가 없이 OP-code 부만으로 구성
  • 모든 연산은 스택(Stack)에 있는 자료를 이용하여 수행

4. 명령어 설계 시 고려 사항

  • 연산자의 종류, 주소 지정 방식, 해당 컴퓨터 시스템 단어(Word)의 크기(비트수)

'정보처리 > CA' 카테고리의 다른 글

[CA-11] 주소 지정방식  (0) 2021.02.06
[CA-10] 기타 요약정리  (0) 2021.02.06
[CA-08] 컴퓨터의 구성  (0) 2021.02.06
[CA-07] 자료의 외부적 표현  (0) 2021.02.06
[CA-06] 자료의 내부적 표현  (0) 2021.02.06
Comments