일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 프로그래머스
- AWS
- 국비
- 스파르타내일배움캠프WIL
- 중심사회
- Flutter
- 부트캠프
- 99클럽
- 개발자스터디
- 스파르타내일배움캠프TIL
- 스파르타내일배움캠프
- 코딩테스트
- java
- wil
- til
- 개발자블로그
- Spring
- 컴퓨터개론
- 소프트웨어
- 컴퓨터구조론 5판
- 99일지
- Python
- 내일배움캠프
- 운영체제
- MySQL
- 항해
- 개인공부
- 백준
- 자바
- 스파르타코딩클럽
- Today
- Total
컴공생의 발자취
컴퓨터 구조론 5판 4장 연습 문제 정답 본문
4.1 제어 기억장치의 용량이 256단어이므로 사상 함수는 8비트이다. 또한 실행 사이클 루틴이 제어 기억장치의 절반 후반부에 저장되므로 최상위 비트는 1이고, 실행 사이클 루틴이 최대 8개의 마이크로-연산들로 구성되어 있으므로 사상 함수는 1XXXX000이다.
4.2 제어 기억장치의 용량이 128단어이므로 사상 함수는 7비트이다. 또한 실행 사이클 루틴이 제어 기억장치의 처음 절반 부분에 저장되므로 최상위 비트는 0이고, 실행 사이클 루틴이 최대 4개의 마이크로명령어들로 구성되어 있으므로 사상 함수는 0XXXX00이다.
4.3
(1) 실행 사이클 루틴이 제어 기억장치의 절반 하반부에 저장되므로 최상위 비트는 1이고, 연산 코드가 5비트이고 최대 8개의 마이크로명령어들로 구성되어 있으므로 사상 함수는 1XXXXX000이다.
(2) 사상 함수가 9비트이므로 512개의 주소가 지정될 수 있다. 따라서 제어 기억장치의 전체 용량은 512단어 이다.
4.4 μ-ops(두 개의 마이크로-연산들), CD(조건 필드), BR(분기 필드), ADF(주소 필드)
명령어 | 주소 | μ-ops | CD | BR | ADF |
NOP | 1 0000 00 | 000 001 | 00 | 00 | 0 0000 00 |
LOAD | 1 0001 00 | 000 000 | 01 | 01 | 0 0001 00 |
1 0001 01 | 010 000 | 00 | 00 | 1 0001 10 | |
1 0001 10 | 100 000 | 00 | 00 | 1 0001 11 | |
1 0001 11 | 101 000 | 00 | 00 | 0 0000 00 | |
STORE | 1 0010 00 | 000 000 | 01 | 01 | 0 0001 00 |
1 0010 01 | 100 000 | 00 | 00 | 1 0010 10 | |
1 0010 10 | 000 010 | 00 | 00 | 1 0010 11 | |
1 0010 11 | 111 000 | 00 | 00 | 0 0000 00 | |
ADD | 1 0011 00 | 010 000 | 00 | 00 | 1 0011 01 |
1 0011 01 | 100 000 | 00 | 00 | 1 0011 10 | |
1 0011 10 | 011 000 | 00 | 00 | 0 0000 00 | |
SUB | 1 0100 00 | 010 000 | 00 | 00 | 1 0100 01 |
1 0100 01 | 100 000 | 00 | 00 | 1 0100 10 | |
1 0100 10 | 000 110 | 00 | 00 | 0 0000 00 | |
JUMP | 1 0101 00 | 000 111 | 00 | 00 | 0 0000 00 |
4.5 각각 세 비트씩으로 구성된 두 개의 연산 필드에 3 × 8 해독기를 각각 사용하여 16비트를 출력하게 만든 후, 출력된 16비트에 4비트씩 4 × 16 해독기를 각각 사용하여 64비트를 출력한다.
4.6 Z플래그가 1이 아니다. = Z플래그가 0이다.
JNZ addr | NOP | Z | JMP | FETCH | Z플래그가 1이면 다음 명령어 인출, 0이면 다음 실행사이클 실행 |
NOP | I | CALL | INDRT | I = 1이면, 간접 사이클 루틴 호출 | |
IRTPC | U | JMP | FETCH | PC ← IR(addr) |
4.7 동시에 두 개 이상의 마이크로-연산들이 수행될 수 있어야 하므로 서브필드는 최소 두 개로 나뉘어야 하고, 마이크로-연산들의 수가 46개이므로 연산필드를 4비트와 5비트로 나누면 24 + 25 = 16 + 32 = 48개의 마이크로-연산들을 지정할 수 있다. 만약 여러 개의 마이크로-연산들을 수행하려면 수직적 마이크로명령어 형식을 사용하므로 해독기를 여러 개 사용하여 마이크로-연산들을 지정할 수 있다.
4.8
수직적 마이크로프로그래밍
장점 : 마이크로 명령어의 길이가 짧기 때문에 제어 기억장치의 용량이 적게 필요함
단점 : 해독기를 통과하는데 걸리는 시간만큼 지연이 발생함
수평적 마이크로프로그래밍
장점 : 제어 기억장치로부터 인출된 마이크로명령어의 마이크로-연산 비트들이 해독기를 통과할 필요 없이 직접 제어 신호로 사용될 수 있기 때문에, 하드웨어가 간단하고 해독에 따른 시간 지연이 없음
단점 : 연산필드의 비트 수가 필요한 제어 신호들의 수만큼 제공되어야 하기 때문에 마이크로 명령어의 길이가 증가하며, 제어 기억장치의 용량이 커짐
4.9
(1) 조건을 결정하는 플래그가 8개이므로 2^3 = 8 즉, 3비트가 필요하다.
(2) 마이크로 명령어 26비트에서 연산 필드 14비트와 조건 필드 3비트를 뺀 나머지 비트들이 주소 필드(ADF)이므로 26 – 14 – 3 = 9비트이다.
(3) 주소 필드가 9비트이므로 2^9개의 주소가 지정될 수 있고, 제어 기억장치의 폭(단어 길이)가 26비트이므로 제어 기억장치의 최대 용량은 2^9 × 26 = 13312비트이다.
'📖 이론 > 컴퓨터구조론' 카테고리의 다른 글
컴퓨터 구조론 5판 6장 연습 문제 정답 (0) | 2023.06.06 |
---|---|
컴퓨터 구조론 5판 5장 연습 문제 정답 (0) | 2023.06.06 |
컴퓨터 구조론 5판 3장 연습 문제 정답 (1) | 2023.06.06 |
컴퓨터 구조론 5판 2장 연습 문제 정답 (5) | 2023.06.06 |
컴퓨터 구조론 5판 1장 연습 문제 정답 (0) | 2023.03.14 |