일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 2018년
- 컴퓨터일반
- 2017년
- 9급
- 정처기 필기
- 지방직
- 전산직
- 공단기 컴퓨터일반
- 컴퓨터
- 국가직
- 2019년 계리직 컴퓨터일반
- 디코더
- 정보처리기사 필기
- 인코더
- 2019년 컴퓨터일반
- 카르노맵
- 서울시
- 탑스팟 컴퓨터일반
- 컴일
- 2019년
- 정보처리기사
- 계리직
- 정처기
- 공단기
- It
- 탑스팟
- 논리회로
- 멀티플렉서
- 2017년 컴퓨터일반
- 2019년 계리직
- Today
- Total
Don't Look Back In Anger
탑스팟 컴퓨터일반 14. 명령어 본문
<명령어의 구성>
연산자부 (Op-Code)
|
번지부 = 자료부 (Operand)
|
EX) ADD → 연산자부
5, 7 같은 숫자 or 숫자가 기억되어 있는 번지의 주소 → 번지부
(1) 연산자부 (Operation Code, Op-Code)
- 수행해야 할 동작에 맞는 연산자를 표시하며 흔히 Op-Code부라고 함
- 연산자부의 크기(비트 수)는 표현할 수 있는 명령의 종류를 나타내는 것으로, nBit 일 때 최대 2ⁿ개의 명령어를 사용할 수 있음
- 연산자부에는 주소부의 유효 주소가 결정되는 방법을 지정하기 위한 모드 비트를 추가하기도 함 (0 : 직접, 1 : 간접)
(2) 번지부 = 자료부 (Operand)
- 자료부는 실제 데이터에 대한 정보를 표시하는 부분으로 주소 필드(Address field)라고도 함
- 기억장소의 주소, 레지스터 번호, 사용할 데이터 등을 표시함
- 자료부의 크기는 메모리의 용량과 관계가 있음 (∵자료부의 크기만큼 번지수를 지정할 수 있으므로)
<명령어의 형식>
(1) 0-주소 명령어 형식 → 스택
연산자
Op-Code
|
- 자료의 주소를 지정하는 Operand부 없이 Op-Code부만으로 구성되어 있음
- 모든 연산은 Stack 메모리의 Stack Pointer가 가리키는 Operand를 이용하여 수행함
- 모든 연산은 스택에 있는 자료를 이용하여 수행하기 때문에 스택머신(Stack Machine)이라고도 함
- 스택에 기억된 데이터만을 이용하여 연산하므로 인스트럭션 수행시간이 짧음
- 피연산자를 나타내지 않기 때문에 인스트럭션의 길이가 짧아서 기억공간의 이용이 효율적임
- 스택을 사용한 컴퓨터에서 수식을 계산하기 위해서는 우선 수식을 Postfix(역polish) 형태로 변경하여야 함
- 연산자와 피연산자를 스택에 넣었다 꺼내어 연산한 후 결과를 다시 스택에 넣으면서 연산하기 때문에 원래의 자료가 남지 않음
EX) X = 4 + 5
0주소 명령어는 스택을 사용하기 때문에 후위식으로 변환해야 한다.
X45+=
push X → push 4 → push 5 → ADD → pop X
5 9 X = 9
4 4 X
X X X
* 스택의 응용분야
- 0주소 명령어 형식의 자료 저장소
- 부 프로그램 호출 시 복귀주소
- 인터럽트가 발생시의 복귀주소
- 재귀(Recursion) 프로그램의 순서 제어
- 컴파일러를 이용한 언어 번역 시
- 후위 표기법(Postfix Notation)으로 표현된 산술식을 연산할 때
(2) 1-주소 명령어 형식 → 누산기
연산자
Op-Code
|
자료1 주소
Operand1
|
- 오퍼랜드를 한 개만 포함하는 명령어로서, 오퍼랜드는 주소를 저장함
- 모든 데이터 처리가 누산기(AC : Accumulator)에 의해 이루어지는 형식
EX) LOAD X; AC ← M[X]
X번지의 데이터를 누산기에 저장해라
(3) 2-주소 명령어 형식
연산자
Op-Code
|
자료1 주소
Operand1 / 결과 주소
|
자료2 주소
Operand2
|
- Operand부가 두 개로 구성되는, 가장 일반적으로 사용되는 명령어 형식
- 여러 개의 범용 레지스터(GPR)를 가진 컴퓨터에서 사용됨
장점
|
단점
|
- 3주소 명령에 비해 명령어의 길이가 짧음
- 계산 결과가 기억장치에 기억되고 중앙처리장치에도 남아 있어서 계산 결과를 시험할 필요가 있을 때 시간이 절약됨
|
- 연산의 결과는 주로 Operand 1에 저장되므로 Operand 1에 있던 원래의 자료가 파괴됨
|
EX) Y = (A + B) * (C + D)
A = 10, B = 20, C = 30, D = 40 이라고 가정
MOV R1 A; R1← M[A] R1 = 10
ADD R1 B; R1 ← R1 + M[B] R1 = 30
MOV R2 C; R2 ← M[C] R2 = 30
ADD R2 D; R2 ← R2 + M[D] R2 = 70
MUL R1 R2; R1 ← R1 * R2 R1 = 2100
MOV Y R1; M[Y] ← R1 Y = 2100
(4) 3-주소 명령어 형식
'IT > 탑스팟 컴퓨터일반' 카테고리의 다른 글
탑스팟 컴퓨터일반 06. 순서논리회로 (0) | 2022.02.18 |
---|---|
탑스팟 컴퓨터일반 05. 조합논리회로 (0) | 2022.02.18 |
탑스팟 컴퓨터일반 01. 컴퓨터의 발전 (0) | 2022.02.18 |
탑스팟 컴퓨터일반 15. 주소지정 방식 (0) | 2022.02.18 |
탑스팟 컴퓨터일반 13. 제어장치와 연산장치 (0) | 2022.02.18 |