Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 06 명령어와 번지지정 방식.

Similar presentations


Presentation on theme: "Chapter 06 명령어와 번지지정 방식."— Presentation transcript:

1 Chapter 06 명령어와 번지지정 방식

2 명령어 구성 명령어 구성 – P166 명령어는 컴퓨터가 어떤 동작을 해야 하는지를 지시
Computer Architecture 명령어 구성 – P166 명령어는 컴퓨터가 어떤 동작을 해야 하는지를 지시 일반적인 명령어 형식(instruction format) 명령어는 ‘행위’를 지시하는 ‘명령 코드’와 그 ‘행위의 대상인 데이터’를 지시하는 ‘번지부’, 그리고 ‘번지부의 해석방법’인 ‘모드’로 구성 명령어 해석은 중앙처리장치의 제어장치에서 수행 명령코드는 Operation Code, 동작코드, 연산코드, 연산자 등으로도 표현됨 번지부는 Operand, 주소부, Address, ADD 등으로도 표현됨

3 명령어 구성 명령 코드(operation code)_1 – P167
Computer Architecture 명령 코드(operation code)_1 – P167 컴퓨터가 수행할 동작을 지시하며 op code 또는 연산자라고도 함 명령 코드의 대표적 기능 함수 연산 기능(Functional operation) 데이터를 처리하는 것으로 산술 연산 및 논리 연산을 수행 모든 기능의 주체가 되며 다른 기능들은 이것의 보조 기능을 담당 전달 기능(Transfer operation) CPU와 주기억장치, CPU내의 레지스터 사이에 정보 교환을 수행 입출력 기능(Input / Output operation) 사용자로부터 프로그램과 데이터를 입력을 받는 기능 입력된 내용을 처리 후 그 결과를 사용자에게 출력하는 기능 제어 기능(Control operation) CPU의 구성요소인 제어장치에서 수행되며 프로그램의 수행 흐름을 제어

4 명령어 구성 Computer Architecture 명령 코드_2

5 명령어 구성 명령어 구성과 RAM – P168 명령어의 구성과 RAM의 용량과의 관계
Computer Architecture 명령어 구성과 RAM – P168 명령어의 구성과 RAM의 용량과의 관계 번지부는 8비트, 전체 명령어는 16비트이므로 RAM 용량은 28ⅹ16이 됨 데이터 버스 (명령어 또는 일반 데이터를 전달) 번지 버스 데이터 버스 RAM용량= 번지용량 X 데이터용량 = 2번지 비트수 X 데이터 비트수 = 28 X 16

6 명령어 구성 * 명령어의 OP CODE의 길이는 실행 가능한 명령어 개수 명령어 주기억장치 CPU
Computer Architecture * 명령어의 OP CODE의 길이는 실행 가능한 명령어 개수 MOD OP CODE ADDR 1비트 4비트 3비트 명령어 주기억장치 24 = 16개 CPU 8비트 0000 : ADD 0001 : SUB 0010 : MUL 0011 : DIV 0100 : 0101 : . 0110 : . 0111 : . 1000 : . 1001 : . 1010 : . 1011 : 1100 : LOAD 1101 : STORD 1110 : JUM 1111 : MOVE 연산 및 제어 장치 PC, MAR, MBR, ACC 8비트 0번지 1번지 2번지 3번지 4번지 5번지 6번지 7번지 OP CODE MOD ADDR 3비트 주기억장치 용량 23 X 88 8 X 8 MOD OP CODE ADDR

7 명령어 구성 명령어 구성과 RAM 및 레지스터_1 – P169 명령어의 구성과 레지스터 크기와의 관계-1
Computer Architecture 명령어 구성과 RAM 및 레지스터_1 – P169 명령어의 구성과 레지스터 크기와의 관계-1 프로그램 카운터(PC)와 MAR(Memory Address Register)은 8비트(번지) MBR(Memory Buffer Register)과 누산기(ACC)는 16비트(데이터) PC, MAR 크기는 번지버스와 동일 데이터 버스 (명령어 또는 일반 데이터를 전달) 번지 버스 데이터 버스 ACC, MBR 크기는 데이터버스와 동일

8 명령어 구성 명령어 구성과 RAM 및 레지스터_2 – P169 명령어의 구성과 레지스터 크기와의 관계-2
Computer Architecture 명령어 구성과 RAM 및 레지스터_2 – P169 명령어의 구성과 레지스터 크기와의 관계-2 프로그램 카운터(Program counter) CPU가 다음에 수행할 명령의 번지를 지시하는 레지스터 CPU는 이 PC가 지정하는 주기억장치에서 명령을 가져와서 수행 MAR (Memory Address Register) 주기억장치에 접근할 때 사용되는 해당 번지를 보관하는 레지스터 MBR (Memory Buffer Register) 주기억장치에 접근할 때 사용되는 해당 내용을 보관하는 레지스터 누산기(Accumulator) 데이터의 연산 결과를 저장하는 레지스터로 A 또는 ACC로 표기됨

9 명령어 구성 명령어 구성과 RAM 및 레지스터_3 – P169
Computer Architecture 명령어 구성과 RAM 및 레지스터_3 – P169 간접 모드 1비트, 동작코드 6비트, 레지스터지정 2비트, 번지부 16비트로 구성된 명령어 형식의 예 데이터 버스 25 간 접 번지 버스 데이터버스 길이 => 전체 명령어 길이 번지버스 길이 => 명령의 번지 부 길이 OP code 길이 => 명령의 개수를 계산 Register 길이 => 레지스터 수를 계산

10 명령어 구성 명령어 구성과 RAM 및 레지스터_4 – P169
Computer Architecture 명령어 구성과 RAM 및 레지스터_4 – P169 간접 모드 1비트, 동작코드 6비트, 레지스터지정 2비트, 번지부 16비트로 구성된 명령어 형식의 예 1) 번지의 개수 : 216 = 64K 개 2) RAM 용량 : 216 X 25 3) 레지스터의 개수 : 22 = 4개 4) 명령의 개수 : 26 = 64개 5) PC의 비트 수 : 16비트 6) ACC의 비트 수 : 25비트 7) MAR의 비트 수 : 16비트 8) MBR의 비트 수 : 25비트

11 명령어 형식 0 번지 명령 – P170 명령 코드만 존재하고 번지부가 없는 형식 0번지 명령 형식
Computer Architecture 0 번지 명령 – P170 명령 코드만 존재하고 번지부가 없는 형식 0번지 명령 형식 스택 구조 컴퓨터에서 명령의 번지가 스택 동작에 의해 지정되는 명령 묵시적으로 명령의 번지가 정해져 있는 명령 명령어 형식을 짧고 간단하다는 특징이 있음 명령어 형식별 프로그램 예

12 명령어 형식 Computer Architecture 명령어 형식별 프로그램 예 1번지 명령 PUSH 2 STACK PUSH 3
4 3 1 STACK PUSH 3 0번지 명령 ADD 5 PUSH 1 6 작업 내용 ( ) 1 + Postfix 표현 ( ) + 1 명령어 형식별 프로그램 예

13 명령어 형식 1번지 명령 – P171 명령어의 번지부가 하나만 있는 명령 1번지 명령 형식
Computer Architecture 1번지 명령 – P171 명령어의 번지부가 하나만 있는 명령 1번지 명령 형식 명령의 번지부에 이항 연산을 위한 2개의 데이터가 저장된 번지 중에 하나만을 표시하고 나머지 하나는 묵시적으로 고정된 명령 묵시적으로 고정된 것은 누산기로 이를 기준으로 연산을 수행 누산기에 기억된 내용을 피연산 데이터로 가정하고 번지부에서 표현한 번지에 있는 데이터를 가져와 연산한 후 그 결과를 누산기에 기억 명령어 형식별 프로그램 예

14 명령어 형식 Computer Architecture 명령어 형식별 프로그램 예 1번지 명령 형식 예 1번지 명령
ADD (ACC) , Mem[2] 2 5 1 3 4 기억장치 CPU ACC 1번지 명령 ADD (ACC) , Mem[2] 2 5 1 3 4 기억장치 CPU 9 ACC ADD (ACC) , 번지1 CPU 기억장치 ACC 1 2 3 4 명령어 형식별 프로그램 예

15 명령어 형식 2번지 명령 – P171 번지부가 2부분으로 피연산자, 연산자를 나타내는 명령 2번지 명령 형식 연산되는 형식
Computer Architecture 2번지 명령 – P171 번지부가 2부분으로 피연산자, 연산자를 나타내는 명령 2번지 명령 형식 2번지 명령의 구성은 번지-1은 피연산 데이터, 번지-2는 연산 데이터를 나타냄 연산되는 형식 특징 2번지 명령은 피연산과 연산 데이터를 모두 임의로 지적할 수 있으므로 보다 편리하지만 피연산 데이터가 지워지는 단점이 있음 명령어 형식별 프로그램 예

16 명령어 형식 Computer Architecture 명령어 형식별 프로그램 예 2번지 명령 형식 예 2번지 명령
ADD Mem[2] , Mem[4] 2 5 4 1 3 기억장치 CPU ACC 2번지 명령 ADD Mem[2] , Mem[4] 2 9 4 1 3 기억장치 CPU ACC ADD 번지1 , 번지2 CPU 기억장치 AC 1 2 3 4 명령어 형식별 프로그램 예

17 명령어 형식 3번지 명령 – P172 번지를 3개로 나누어 표현하는 명령 3번지 명령 형식 연산 형태 특징
Computer Architecture 3번지 명령 – P172 번지를 3개로 나누어 표현하는 명령 3번지 명령 형식 3번지 명령의 구성은 번지-1은 피연산 데이터, 번지-2는 연산 데이터, 번지-3은 결과를 기억하는 장소임 연산 형태 특징 결과가 번지-3에 기억되므로 피연산 데이터가 보존되는 장점이 있음 2번지 명령 형식과 비교할 때 명령어 길이가 길어지고 효율이 떨어지므로 거의 사용하지 않음 명령어 형식별 프로그램 예

18 명령어 형식 Computer Architecture 명령어 형식별 프로그램 예 3번지 명령 형식 예 3번지 명령
ADD R1 , Mem[2] , Mem[4] 2 5 1 3 4 기억장치 CPU R1 ACC 3번지 명령 ADD R1 , Mem[2] , Mem[4] 2 5 8 1 3 4 기억장치 CPU R1 ACC ADD 번지1 , 번지2 , 번지3 CPU 기억장치 R1 AC 1 2 3 4 명령어 형식별 프로그램 예

19 명령어 형식 산술식 Z = A * (B + C)를 수행하는 각 명령 형식별 프로그램
Computer Architecture 산술식 Z = A * (B + C)를 수행하는 각 명령 형식별 프로그램 덧셈 명령의 예 : => ADD 1 , 2

20 명령어 형식 구성 특징 명령 형식 0번지 명령 번지부가 없는 형식 - 스택구조 컴퓨터의 스택동작에 의한 명령
Computer Architecture 명령 형식 구성 특징 0번지 명령 번지부가 없는 형식 - 스택구조 컴퓨터의 스택동작에 의한 명령 - 묵시적으로 번지가 정해진 명령 1번지 명령 번지부가 1개인 형식 - 1개의 번지부는 누산기로 고정된 명령 - 누산기 외 다른 1개의 번지만을 표시 2번지 명령 번지부가 2개인 형식 - 가장 일반적인 형태 - 연산 결과 저장 시에 피연산자 삭제 3번지 명령 번지부가 3개인 형식 - 연산 결과 저장 시에도 피연산자 보존 - 긴 명령어 길이를 사용함으로 비효율적임

21 명령어 형식 Computer Architecture 2번지 명령 형식의 컴퓨터에서 기억용량이 4096 word인 경우, 명령어의 길이가 40비트일 때 동작코드의 길이를 계산하시오. * 2번지 명령 형식 문제_1 명령 코드 번지부 명령어 길이(2번지) = 동작 코드 길이 + 번지부 길이 + 번지부 길이 기억용량 = 번지용량 X 데이터용량 = 2번지 비트수 X 데이터비트수 word = 데이터 용량 = 명령어 길이 명령어 기억장치

22 명령어 형식 Computer Architecture 2번지 명령 형식의 컴퓨터에서 기억용량이 4096 word인 경우, 명령어의 길이가 40비트일 때 동작코드의 길이를 계산하시오. * 2번지 명령 형식 문제_2 명령 코드 번지부 기억용량 = 번지용량 X 데이터용량 = 2번지 비트수 X 데이터비트수 = X word = X word 4096 = 2번지 비트수 = 212 이므로 , 번지부 크기는 12비트 명령코드 길이 = 40 – 12 – 12 = 16

23 명령어 종류 명령어 분류 – P173 산술, 논리, 시프트 명령 메모리와 프로세서 레지스터 사이에 정보를 이동시키는 명령
Computer Architecture 명령어 분류 – P173 산술, 논리, 시프트 명령 예) ADD, INC, CMA, AND, CLA, SHR, SHL 명령 등 메모리와 프로세서 레지스터 사이에 정보를 이동시키는 명령 예) LDA, STA 명령 등 상황을 설정하기 위하여 정보 상태를 검사 또는 분기하는 명령 예) BUN, BSA, ISZ, SKIP, BR, JMP, CALL, RET 명령 등 입력과 출력 명령 예) IN, OUT, PUSH, POP 컴퓨터를 정지시키는 명령 예) HLT 명령

24 데이터 전송 명령 Computer Architecture 데이터 전송 명령 – P174 데이터 내용은 변경하지 않고 저장 장소만을 바꾸는 명령으로 주기억장치, 레지스터(CPU), 입출력 장치 사이의 데이터 전달을 수행 대표적인 명령 로드(load) 아래 왼쪽 그림과 같이 주기억장치에서 CPU의 레지스터로 데이터를 가져오는 명령 스토어(store) 로드와 반대되는 작업으로 CPU내의 특정 레지스터 값을 주기억장치에 저장 mov(또는 move): 레지스터간의 정보 전송을 나타냄 input과 ouput: 입출력장치와 레지스터간의 정보전송 push와 pop: 스택 연산에서 사용되는 명령 CPU CPU

25 데이터 처리 명령 데이터 처리 명령_1 –P175 산술 명령 논리 연산 명령
Computer Architecture 데이터 처리 명령_1 –P175 산술 명령 기본적인 산술 명령은 사칙 연산으로 가산을 기본으로 동작 산술명령의 종류 기본적인 사칙연산 값을 1 증가하거나 감소시키는 increment, decrement 명령 캐리를 가진 덧셈 명령, 2의 보수를 취하는 명령 논리 연산 명령 산술 연산 명령 이외에 NOT, AND, OR, XOR 연산을 수행 AND 연산은 특정 부분을 0으로 지정하는 마스크(mask) 기능을 수행 OR 명령은 특정 비트를 1로 지정하기 위해 사용 XOR 명령은 특정 비트의 보수를 취하는 경우에 사용

26 데이터 처리 명령 데이터 처리 명령_2 – P175 시프트 명령
Computer Architecture 데이터 처리 명령_2 – P175 시프트 명령 레지스터에 저장된 내용을 왼쪽이나 오른쪽으로 밀어주는 동작을 수행 시프트 명령의 종류 논리 시프트 명령 MSB나 LSB에 0이 입력 산술 시프트 명령 좌측 시프트는 2배, 우측 시프트는 ½배의 효과 MSB의 부호 비트는 고정시키고 처리 양수일 경우 모든 추가 비트는 0 음수에 대한 부호와 절대치 표현일 경우 모든 추가 비트는 0 음수에 대한 1의 보수 표현일 경우 모든 추가 비트는 1 음수에 대한 2의 보수 표현일 경우 좌측은 추가 비트는 0, 우측은 추가 비트는 1 회전 시프트 명령 동일하며 밀려나간 비트가 다시 반대편 끝으로 입력시킴

27 프로그램 제어 명령 프로그램 제어 명령 – P176 프로그램 카운터의 값을 변경해 프로그램의 진행 순서를 조정하는 명령
Computer Architecture 프로그램 제어 명령 – P176 프로그램 카운터의 값을 변경해 프로그램의 진행 순서를 조정하는 명령 프로그램 제어 명령의 종류 조건부 분기 명령 특정 조건(양수나 음수, 오버플로 발생 등)에 따라 분기 무조건 분기 명령 특정 번지로 바로 분기를 수행 사용자가 이동되는 번지를 직접 지정하는 것이 가능 SKP 명령 PC 값을 1증가하여 다음 명령을 지적하도록 하는 무번지 명령 콜(CALL)과 리턴(RET) 명령 서브루틴을 수행 시에 사용 검사 명령(Compare, Test) 실행순서를 직접 변경하지는 않지만 특정상태를 나타내는 레지스터를 조정하여 나중에 분기가 되도록 처리

28 명령어 종류 특징 명령어 종류 데이터 전송 (전달 및 입출력 기능) - 내용의 변경 없이 저장 장소를 바꾸는 명령
Computer Architecture 명령어 종류 특징 데이터 전송 (전달 및 입출력 기능) - 내용의 변경 없이 저장 장소를 바꾸는 명령 - LOAD, STROE (레지스터와 주기억장치 간 이동) - MOVE (레지스터 간 이동) - INPUT, OUTPUT (레지스터와 입출력 정치 간 이동) 데이터 처리 (함수/연산 기능) - 연산을 통해 내용이 변경되는 명령 - 산술 연산 명령 (ADD, SUB, MUL, …) - 논리 연산 명령 (AND, OR, XOR, …) - 시프트 연산 명령 (SHL, SHR, ROL, …) 프로그램 제어(제어 기능) - PC 값을 변경하여 프로그램의 진행순서를 바꾸는 명령 - 분기 명령, Skip 명령 - CALL 명령 및 Return 명령 - 검사 명령 (Compare 명령, Test 명령)

29 명령어 번역과 실행 기계어(Machine language) – P177 어셈블리 언어(Assembly language)
Computer Architecture 기계어(Machine language) – P177 컴퓨터가 직접 그 의미를 해석하여 실행할 수 있는 명령어로 구성 번역할 필요 없이 실행되지만 프로그램을 작성에 어려움이 있음 어셈블리 언어(Assembly language) 기계 지향적 언어(machine oriented language) 기계어의 각 명령을 일대일로 대응시킨 인공 언어 기계어로 번역해주는 어셈블러(assembler)가 필요

30 명령어 번역과 실행 컴파일러와 인터프리터 – P178 인간 지향적 언어(human oriented language)
Computer Architecture 컴파일러와 인터프리터 – P178 인간 지향적 언어(human oriented language) 일반적인 문장이나 계산식으로 표현이 가능한 프로그래밍 언어 컴파일러 언어 컴파일러가 번역하는 프로그래밍 언어는 코볼, 포트란, 피엘원, 파스칼 등 컴파일러(compiler) 원시 프로그램 전체를 한번에 기계어로 번역하는 번역 프로그램 인터프리터 언어 인터프리터가 번역하는 프로그래밍 언어는 베이식, 에이피엘 등 인터프리터(interpreter) 원시 프로그램을 한 명령씩 기계어로 번역하는 번역 프로그램

31 명령어 번역과 실행 명령 번역 형태 특징 컴파일 언어 - 원시 프로그램 전체를 한번에 기계어로 번역한 후에 실행
Computer Architecture 명령 번역 형태 특징 컴파일 언어 - 원시 프로그램 전체를 한번에 기계어로 번역한 후에 실행 - 해당 프로그래밍 언어는 코볼, 포트란, 피엘원, 파스칼,C 등 인터프리터 언어 - 원시 프로그램을 한 명령씩 기계어로 번역함과 동시에 실행 - 해당 프로그래밍 언어는 베이직, 에이피엘 등 어셈블리 언어 - 기계어와 일대일로 대응시킨 어셈블리 언어을 번역하여 실행 - 기계 지향적 언어(machine oriented language)

32 번지 지정 방식 번지(address) – P178 번지지정방식
Computer Architecture 번지(address) – P178 주기억장치를 데이터 단위로 나누어 16진수로 일련번호를 부여한 것 번지지정방식 명령의 번지부로부터 처리할 실제 데이터가 있는 장소를 표현하는 방법 실제 오퍼랜드를 찾기 위한 명령어 번지필드 값을 처리하는 방법을 규정 번지 지정 방법의 효과 포인터, 카운터 인덱싱, 프로그램 재배치(relocation) 등의 편의를 제공하여 프로그래밍을 하는데 융통성을 줌 명령의 번지 필드의 길이를 줄임

33 직접 번지 형식 직접 번지(Direct address) – P179 번지부에 실제 데이터가 저장된 번지(유효번지)를 직접 표시
Computer Architecture 직접 번지(Direct address) – P179 번지부에 실제 데이터가 저장된 번지(유효번지)를 직접 표시 번지부의 비트 수에 의해 기억 장치의 용량이 제한되는 단점이 있음 직접 번지 형식에 의한 기억 장소의 접근 과정 명령어의 번지부에 있는 값이 실제 접근할 메모리의 유효 번지 유효 번지를 갖고 주기억장치에 접근해서 실제 데이터를 얻을 수 있는 방식으로 주기억장치를 1번만 엑세스 함

34 간접 번지 형식 직접번지와 간접 번지 – 직접번지(번지부 비트만 사용) Computer Architecture 직접
OP CODE ADDRESS 1비트 2비트 0 0 0 1 1 0 1 1 1비트 1비트 1비트 1비트 1 2 3 연산에 사용할 값 연산에 사용할 값 연산에 사용할 값 연산에 사용할 값

35 간접 번지 형식 간접 번지(Indirect address) 형식 – P180 번지부에 유효번지를 저장하고 있는 번지를 표시
Computer Architecture 간접 번지(Indirect address) 형식 – P180 번지부에 유효번지를 저장하고 있는 번지를 표시 명령어 길이가 짧아도 큰 용량의 기억장치를 표현할 수 있음 간접 번지 형식에 의한 기억 장소의 접근 과정 명령어 번지부 값을 가지고 주기억 장소를 1번 접근한 뒤, 그 주기억 장소의 번지 내용을 이용해 주기억 장소를 1번 더 접근해서 실제 데이터를 찾음 실제 데이터를 찾기 위해서는 2번의 기억장치 접근이 이루어져야 함

36 간접 번지 형식 직접번지와 간접 번지 – 간접번지(전체 비트를 사용) Computer Architecture 간접
OP CODE ADDRESS 1비트 2비트 1비트 1비트 1 2 3 4 5 6 7 8 9 A B C D E F 1 2 3 0 0 0 1 1 0 1 1 연산에 사용할 값이 저장된 번지 4비트 연산에 사용할 값

37 상대 번지 형식 상대 번지(Relative address) 방식 – P181
Computer Architecture 상대 번지(Relative address) 방식 – P181 번지 부분의 값과 특정 값을 더해서 상대적인 위치를 지정하는 방식 프로그램 카운터(PC) 값을 명령의 번지 부분과 더해서 유효 번지를 결정 인덱스 레지스터(Index register) 또는 베이스 레지스터(Base register)의 값을 사용할 수도 있음 상대 번지 지정 방식의 원리

38 상대 번지 형식 인덱스 레지스터(Index Register) 번지 지정 방식
Computer Architecture 인덱스 레지스터(Index Register) 번지 지정 방식 인덱스 레지스터의 값을 명령의 번지 부분과 더해서 유효 번지를 결정 인덱스 번지 지정 방식의 원리

39 상대 번지 형식 베이스 레지스터(Base Register) 번지 지정 방식
Computer Architecture 베이스 레지스터(Base Register) 번지 지정 방식 베이스 레지스터의 값을 명령의 번지 부분과 더해져서 유효 번지를 결정 베이스 레지스터 지정 방식의 원리

40 상대 번지 형식 Computer Architecture 상대 번지 형식의 특징 번지부의 비트 수가 적어도 상대적인 값만 표현하면 되므로 큰 용량의 기억 장치를 사용할 수 있음 간접 번지와는 달리 별도의 주기억장치에 접근할 필요가 없어 편리함 페이지 단위로 프로그램을 이동시킬 경우 그 페이지 내에서 상대적인 값은 일정하므로 기준 레지스터에 기억된 값만 바꾸면 원하는 페이지의 번지로 바꿀 수 있음 가상 기억장치 또는 캐시 기억장치에서 번지 변환이 쉬운 장점이 있음

41 직접 데이터 형식 직접 데이터 (Immediate data) 형식 – P183 명령어의 번지 부분에 연산할 실제 데이터를 표시
Computer Architecture 직접 데이터 (Immediate data) 형식 – P183 명령어의 번지 부분에 연산할 실제 데이터를 표시 직접 데이터 형식 연산할 데이터를 주기억장치에 접근하지 않고, 바로 번지부의 내용을 이용하여 연산할 수 있으므로 연산 속도가 빠르고 편리함 프로그램에서 사용하는 데이터는 다양하므로 모든 경우의 번지 지정을 이 방법으로 표현할 수는 없음 명령어 번지부의 크기가 제한되어 있으므로 모든 표현에 적용하는 것은 곤란

42 번지 지정 방식 Implied 모드 – P183 레지스터 모드 오퍼랜드의 위치가 묵시적으로 명령에 따라 정해짐
Computer Architecture Implied 모드 – P183 오퍼랜드의 위치가 묵시적으로 명령에 따라 정해짐 스택 구조의 컴퓨터에서 스택의 top이 오퍼랜드 위치인 무번지 명령 누산기를 사용하는 명령 레지스터 모드 번지부에 연산에 사용될 데이터가 저장된 CPU 내의 레지스터를 표시 실제 데이터는 오퍼랜드가 지적하는 레지스터가 가지고 있는 경우

43 번지 지정 방식 레지스터 간접 모드 – P184 자동 증가 혹은 자동 감소 모드 번지부에 유효 번지를 저장한 레지스터를 표시
Computer Architecture 레지스터 간접 모드 – P184 번지부에 유효 번지를 저장한 레지스터를 표시 선택된 레지스터는 오퍼랜드 그 자체가 아니라 오퍼랜드의 번지인 경우 자동 증가 혹은 자동 감소 모드 레지스터 값이 메모리를 접근하고 난 직후, 자동으로 하나 증가하거나 감소한다는 사실을 제외하면 레지스터 간접 모드와 동일

44 번지 지정 방식 문제1 - ACC에 오퍼랜드를 적재하라는 250과 251번지 명령의 수행 결과에 대한 다음의 표를 완성하시오.
Computer Architecture 문제1 - ACC에 오퍼랜드를 적재하라는 250과 251번지 명령의 수행 결과에 대한 다음의 표를 완성하시오. PC = 250 R = 400 IX =400 레지스터 연산코드 기억장치 모드 (번지지정방식) 다음 명령어 250 251 252 700 800 600 300 200 400 500 752 900 ACC 번지부 (500) 번지 지정 방식 유효 번지 ACC 내용 직접 번지 방식 500 800 간접 번지 방식 300 상대 번지 방식 752 600 인덱스 번지 지정 방식 900 200 직접 데이터 방식 251 레지스터 방식 400 간접 레지스터 방식 700

45 번지 지정 방식 문제1 - 해답 번지 지정 방식 유효 번지 ACC의 내용 직접 번지 방식 500 800 간접 번지 방식 300
Computer Architecture 문제1 - 해답 번지 지정 방식 유효 번지 ACC의 내용 직접 번지 방식 500 800 간접 번지 방식 300 상대 번지 방식 752 600 인덱스 번지 지정 방식 900 200 직접 데이터 방식 251 레지스터 방식 - 400 간접 레지스터 방식 700

46 번지 지정 방식 문제2 - ACC에 오퍼랜드를 적재하라는 200과 201번지 명령의 수행 결과에 대한 다음의 표를 완성하시오.
Computer Architecture 문제2 - ACC에 오퍼랜드를 적재하라는 200과 201번지 명령의 수행 결과에 대한 다음의 표를 완성하시오. 레지스터 기억장치 번지 지정 방식 유효 번지 ACC 내용 직접 번지 방식 간접 번지 방식 상대 번지 방식 인덱스 번지 지정 방식 직접 데이터 방식 레지스터 방식 간접 레지스터 방식 PC = 200 200 연산코드 번지지정방식 201 300 R = 500 202 다음 명령어 IX = 500 300 400 ACC 400 500 500 600 502 300 800 200

47 번지 지정 방식 문제2 - 해답 번지 지정 방식 유효 번지 ACC의 내용 직접 번지 방식 300 400 간접 번지 방식 500
Computer Architecture 문제2 - 해답 번지 지정 방식 유효 번지 ACC의 내용 직접 번지 방식 300 400 간접 번지 방식 500 상대 번지 방식 502 인덱스 번지 지정 방식 800 200 직접 데이터 방식 201 레지스터 방식 - 간접 레지스터 방식 600

48 CISC CISC(Complex Instruction Set Computer) – P185
Computer Architecture CISC(Complex Instruction Set Computer) – P185 여러 가지의 명령어와 번지지정 모드를 지원 마이크로 프로그램을 ROM에 코드화하여 실현 제어기의 구성이 복잡하고 명령 단위의 수행 시간도 오래 걸림 특징 다양한 길이와 여러 명령어 형식을 제공 마이크로 프로그램 제어 방식의 프로세서로 구성 한 개의 명령어로 최대의 동작을 수행 컴퓨터 설계와 구현에 많은 시간이 필요

49 RISC RISC(Reduced Instruction Set Computer)
Computer Architecture RISC(Reduced Instruction Set Computer) 기본 명령의 수를 적게 하고 빠른 연산 처리 속도를 지원 RISC의 목표는 주기억장치 주기 (CPU 1 Cycle)의 최소화 프로그램의 길이가 길어지는 단점이 있음 특징 고정 길이와 최소 명령어 개수 및 번지 지정 모드를 제공 하드와이어 제어 방식의 프로세서로 구성 LOAD/STORE 방식의 메모리 구조 다수의 레지스터군 제공

50 CISC와 RISC의 비교 Computer Architecture

51 주요 학습 내용 명령어 구성 명령어 형식 명령어 종류 명령어 번역과 실행 번지지정 방식 CISC와 RISC
Computer Architecture 명령어 구성 명령어 형식 명령어 종류 명령어 번역과 실행 번지지정 방식 CISC와 RISC


Download ppt "Chapter 06 명령어와 번지지정 방식."

Similar presentations


Ads by Google