마이크로 연산 Major 상태 순서:
[Fetch - Indirect - Execute - Interrupt]
TMI(그냥 상식용으로 알자): [플립플롭 R, F상태에 따른 싸이클]
Major 상태 | 플립플롭 상태 R | 플립플롭 상태 F |
1. 인출 사이클 (Fetch Cycle) | 0 | 0 |
2. 간접 사이클 (Indirect Cycle) | 0 | 1 |
3. 실행 사이클 (Excute Cycle) | 1 | 0 |
4. 인터럽트 사이클 (Interrupt Cycle) | 1 | 1 |
마이크로 연산
- 프로그램 카운터(PC) : 다음에 수행할 명령어의 주소를 저장합니다.
- 메모리 주소 레지스터(MAR) : 읽기와 쓰기 연산을 수행할 주기억장치의 주소를 저장합니다.
- 메모리 버퍼 레지스터(MBR) : 주기억자치에서 읽어온 데이터나 주기억장치에 저장할 데이터를 임시로 저장합니다.
- 명령어 레지스터(IR) : 현재 실행 중인 명령어를 저장합니다.
- 누산기(AC) : 연산 결과를 임시로 저장합니다.
Fetch Cycle (인출) |
명령어를 주기억장치에서 중앙처리장치의 명령 레지스터로 가져와 해독한다. |
[순서] | [설명] |
MAR ← PC | 실행할 명령어의 번지를 MAR로 전달한다. |
MBR ← M(MAR) | MAR에 위치한 메모리 내용을 MBR로 전달한다. |
PC ← PC + 1 | 다음에 실행할 명령어를 위해서 PC를 1 증가시킨다. |
IR ← MBR | 메모리 내용을 IR로 전달 한다. |
LDA (Load AC) |
메모리 내용을 누산기에 적재하는 명령이다. |
[순서] | [설명] |
MAR ← MBR[ADDR] | 실행 주소를 MAR로 전송한다. |
MBR ← M[MAR], AC ← 0 | 피연산자를 읽고, 누산기를 클리어 한다. |
AC ← AC + MBR | 누산기와 덧셈 연산을 한다. |
ADD |
더하기 |
[순서] | [설명] |
MAR ← MBR[ADDR] | 실행 주소를 MAR로 전송한다. |
MBR ← M[MAR] | 피연산자를 읽고, 누산기를 클리어 안 한다! |
AC ← AC + MBR | 누산기와 덧셈 연산을 한다. |
STA |
AC 데이터를 메모리에 저장 |
[순서] | [설명] |
MAR ← MBR[ADDR] | 실행 주소를 MAR로 전송한다. |
MBR ← AC | AC 결과를 MBR에 저장 |
M ← MBR | MBR 데이터를 M(Memory)에 저장 |
'자격증 > 전자계산기조직응용기사' 카테고리의 다른 글
[전자계산기조직응용기사] 필수! 1의 보수, 2의 보수의 계산 (2) | 2021.04.16 |
---|---|
[Summary] ECK (0) | 2021.04.15 |
[전자계산기조직응용기사] 필수! 반감산기와 전감산기 (2) | 2021.04.03 |
[전자계산기조직응용기사] 필수! 반가산기와 전가산기 (0) | 2021.04.02 |
[전자계산기조직응용기사 실기] 필수! 그레이코드와 2진코드 (0) | 2021.04.01 |