공부 Note/컴퓨터 구조

Chapter 03 중앙처리장치 (4)

AmyG 2022. 2. 24. 10:06
반응형

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

   * 명령어 (instruction) 집합

   * 주소 지정 모드 (addressing mode)

 

명령어 (instruction) 집합

   * 실행 순서에 따른 명령어 분류

      - 순차적 실행 명령어 - 전체 실행 명령어의 70 ~ 80% 차지

      - 분기 명령어

      - 부 함수 호출 명령어

      - 복귀 명령어

 

   * 명령어 구문 형식

   ① 명령 코드 ② 오퍼랜드 주소

 

① 명령코드         ② 주소지정 모드 ③ 오퍼핸드 주소

      ① 명령 코드 : CPU가 실행할 수 있도록 디자인 된 연산

      ② 오퍼랜드 : 연산에 사용되는 자료 값, 자료가 저장 된 주소에 관한 정보

      ③ 주소 지정 모드 (addressing mode) : 오퍼랜드가 저장된 위치를 인덱싱 (지정)하는 방법

 

   * 명령어 집합의 설계

설계 관점 자연어에 가까운 명령 코드         기계 중심의 명령 코드
프로그램의 관점    
CPU 구조 설계 측면    

 

   * 협업에서 활용되는 명령어군의 활용 비율

명령 코드         실행 비율
Load, store, move 38% → 자료전송 명령어
Compare, add, and, sub 35% → 산술/논리 연산 명령어
Condition blench, call, return 22% → 실행제어 명령어

※ 이상의 명령어가 전체 실행 명령어의 양 90% 이상임을 확인 함

 

주소 지정 모드 (addressing mode)

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

   * 묵시적 모드 (oprand가 명령어에 포함되어 있지 않은 특수 모드)

      - NOP : NO operation, 오퍼랜드가 필요 없는 명령어

      - INC : 묵시적 오퍼랜드인 누산기(AC)의 연산 명령어

      - ADD : 스택 수조의 명령어 (스택에 오퍼랜드가 저장)

   * 직접 값 모드 : operand 자체가 명령어에 포함되어 있는 모드

   * 레지스터 모드 (Register mode) : 오퍼랜드가 레지스터에 저장된 모드

   * 메모리 직접 주소 모드 (Direct mode) : 오퍼랜드가 저장된 메모리 주소를 나타내는 모드

   * 메모리 간접 주소 모드 (Memory indirect addressing mode) : 메모리를 이용하여 간접적으로 주소를 지정하는 모드

 

   * 주소 지정 모드의 예) R1 = 100, R2 = 200 이라고 가정

      ① MOV R1, #150 => 직접 값 모드, R1 = 150 / R1에 직접 값 150을 지정

      ② MOV R1, R2 => 레지스터 모드, R1 = 200 / R1에 R2 값(200)을 지정

      ③ MOV R1, 192 => 직접 모드, R1 = 300 / R1에 192 의 값인 300을 지정

      ④ MOV R1, @191 => 메모리 간접 모드, R1 = 350 / 191의 값인 200을 다시 주소로 받아서 200의 값인 350을 R1에 지정

Add Con
190 150
191 200
192 300
… …
200 350
201 700

 

출처 : 제로베이스

반응형