[전자계산기 구조] 컴퓨터의 명령형태

컴퓨터의 명령형태

( 기본 컴퓨터 구조 )

 

  • 기본 컴퓨터의 구조
    • 내부 Register
    • Timing과 제어구조        마이크로 동작의 sequence에 의해 정의
    • 명령어 집합

 

  • 기본 컴퓨터 종류
    • 전용 ( Special purpose ) 컴퓨터 시스템
    • 범용 ( general purpose ) 컴퓨터 시스템

 

  • 명령코드 ( Instruction Code )

    ->특정 동작을 수행하기 위해 컴퓨터에 지시하는 한 묶음의 bit

    • 수행할 연산을 지정해주는 연산코드 필드 ( Operation Code field )
    • 메모리 주소나 프로세서 레지스터를 표시하는 주소 필드 ( Address field )
    • 주소 필드를 결정하는 방법(직접/간접)을 지정하는 모드필드 ( Mode field )

 

 

 

 

2.1 주소필드 ( Address field )

 

  • 컴퓨터 구조      Register : 수행될 동작

    명령코드 : 번지지정 ( 3주소명령어, 무 주소 명령어 )

  • 단일 누산기 구조 :     AC <- AC +M[x]

  • 범용 레지스터 구조 :          R1 <- R2 + R3

     

  • 스택 구조 :     데이터 入力     데이터 出力

     

  • 공통버스 시스템
    • 레지스터와 레지스터사이     정보전송 Path
    • 레지스터와 메모리 사이 (내부신호선 연결)

 

  • 레지스터의 종류 (기본컴퓨터의 경우 8개의 레지스터로 구성)
    • PC (Program Counter) : 메모리에 저장된 내용을 순차적으로 읽어내는 기능
    • MAR (Memory Address Register) : AR = Address Register
    • MBR (Memory Buffer Register) : DR = Data Register
    • AC (Accumulator)
    • OPR (Operand R) : IR = Instruction Register
    • INPR (Input Register)
    • OUTR (Output Register)
    • SC (Stack Counter) : TR = Temporary Register

 

2.2 주소 지정 방식

  • 연산코드에서 지시한 명령의 대상이 되는 데이터나 그 데이터가 보관되어 있는 메모리 주소 등이 있는데 이와 같이 명령에서 목적하는 데이터가 들어 있는 주소를 가리키는 방식을 말한다.
  • 기본 연산 사이클
    • Instruction fetch Cycle (명령어 Decoding 과정 ): 메모리에서 명령을 읽어오는 과정
    • Indirect Cycle : 메모리에서 읽혀진 word가 OPR의 address일 때
    • Execution Cycle : 메모리에서 읽혀진 word가 OPR일 때
    • Interrupt Cycle : 특정 入出力명령을 지정할 때 수행

 

  • 지정방식의 종류
    • 함축 주소 지정 방식 (Implied 방식)
      • ADD R1 : 누산기를 사용하는 명령 (누산기 내용과 R1레지스터 내용을 더하기)
    • 즉치 주소 방식 (Immediate 방식)
      • LD R1, 100 : 레지스터 R1에 데이터 100을 로드 하라는 명령
    • 레지스터 방식 / 레지스터 간접방식
    • 직접 주소 지정방식 / 간접 주소 지정방식

 

2.3 스택구조 ( Stack )

  • SC ( Stack Counter )
  • SP ( Stack Point ) : 주소 레지스터
  • LIFO ( Last In First Out )

    FIFO ( First In First Out )

 

예)

-> PUSH ( 데이터 入力 )

-> POP ( 데이터 出力 )

 

2.4 데이터 전송, 처리, 제어 명령

전송 (Transfer) -> 데이터를 컴퓨터의 한 장소에서 다른 장소로 내용을 변화 시키지 않고 전달하는 명령어

처리 (Manipulation) -> 데이터 조작

  1. 산술명령
  2. 논리 및 비트처리 명령
  3. 시프트 명령어

제어명령 (Control) -> 프로그램 카운터 (PC) 의 값을 바꾸어 프로그램 진행 위치를 변경하는 명령

인터럽트 명령 (Interrupt) -> 비정상적 프로그램의 일종으로 외부 또는 내부적으로 발생한 요구에 의해 현재 진행중인 프로그램을 중지하고 다른 서비스 프로그램을 수행하는 행위 (일종의 서브루틴 과정 )

  1. 외부 인터럽트
  2. 내부 인터럽트    Hardware 인터럽트
  3. 소프트웨어

 

ik47.pdf

답글 남기기

이메일 주소는 공개되지 않습니다.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> 

이 사이트는 스팸을 줄이는 아키스밋을 사용합니다. 댓글이 어떻게 처리되는지 알아보십시오.