컴퓨터구조 #12 마이크로 명령어 집합과 구성

underlier12·2020년 4월 20일
3

컴퓨터구조

목록 보기
12/26

12. 마이크로 명령어 집합과 구성

명령어 집합

실행 순서에 따른 명령어 분류는 다음과 같다.

  • 순차 실행 명령어
  • 분기 명령어
  • 부함수 호출 명령어
  • 복귀 명령어

명령어 구문 형식

명령어 구문을 이루는 형식은 다음과 같이 구성이 되어있다.

  1. 명령 코드 : CPU가 실행할 수 있도록 디자인 된 연산
  2. 오퍼랜드 : 연산에 사용되는 자료 값, 자료가 저장 된 주소에 관한 정보
  3. 주소 지정 모드 : 오퍼랜드가 저장된 위치를 인덱싱 하는 방법

주소 지정 모드는 addressing mode라고 한다

현업에서 활용되는 명령어 비율

전체 실행 명령어의 90% 이상 임

주소 지정 모드

addressing mode는 명령어의 구조상 자료가 저장되어 있는 장소를 지정하는 방법이 필요하다. 이는 하드웨어와 소프트웨어의 독립성을 유지하여 프로그램의 유연성을 가능하게 하여 명령어의 수와 길이를 줄이기 위한 표준화 방법이다.

종류는 다음과 같다.

  • 묵시적 모드 : operand가 명령어에 포함되어 있지 않는 특수 모드
    • NOP : No operation, 오퍼랜드가 필요없는 명령어
    • INC : 묵시적 오퍼랜드인 누산기(AC)의 연산 명령어
    • ADD : 스택 구조의 명령어(스택에 오퍼랜드가 저장)
  • 직접 값 모드 : operand 자체가 명령어에 포함되어 있는 모드
    • Ex) MOV R1, #100; 십진수 값 100이 두번째 오퍼랜드로 직접 명령문에 포함 됨
  • 레지스터 모드 : operand가 레지스터에 저장 된 모드
    • Ex) ADD R1, R2; 레지스터 R1, R2에 보유하고 값이 operand 임
  • 메모리 직접 주소 모드 : operand가 저장된 메모리 주소를 나타내는 모드
    • Ex) MOV R1, 100; R1에 100번지의 내용을 이동, 결국 100번지 내용이 두번째 오퍼랜드가 됨
  • 메모리 간접 주소 모드 : 메모리를 이용하여 간접적으로 주소를 지정하는 모드
    • Ex) MOV R1, @100; R1 <- M[100]

주소 지정 모드 예시

다음 마이크로 명령을 수행하면서 어떤 변화가 일어나는지 확인하면 각 모드의 역할을 알 수 있다. R1 = 100, R2 = 200 의 초기값을 가진다고 가정한다.

profile
logos and alogos

0개의 댓글