-> 블로그 이전

[컴퓨터구조론] 1장 연습문제

2022. 1. 18. 15:49Solution`/컴퓨터구조론

1.1

아래 용어들의 의미를 설명하라

(1) 기계어 프로그램

- 컴퓨터가 이해할 수 있는 0, 1의 2진 비트열로 구성된 프로그램

 

(2) 어셈블리 명령어

- 각 CPU별 언어 차이를 해결하기 위해, 고급언어 <~> 기계어 사이에 각 CPU 고유의 언어

 

(3) 니모닉스

-각 어셈블러 명령어가 지정하는 동작들을 나타내는 기호
 -> LOAD, ADD, STOR,...

 

(4) 단어

- 각 기억장소에 저장되는 Data의 단위
- CPU에 의해 한 번에 처리될 수 있는 비트들의 그룹

 

 

1.2

16비트 명령어에서 6비트는 연산 코드로 사용되고, 나머지 비트들은 오퍼랜드로 상용된다

연산 코드 (op code) 오퍼랜드 (operand)
6비트 10비트

(1) CPU가 수행할 수 있는 연산의 종류는 최대 몇 가지 인가?

최대 연산 종류 = 2^(opcode 필드 비트 수) = 2^(6) = 64가지

 

(2) 오퍼랜드가 기억장치 주소를 가리키고, 각 기억 장소에는 1byte씩 저장된다면, 이 명령어에 의해 직접 주소지정 될 수 있는 기억장치의 용량은 몇 byte인가?

최대 기억장치 용량 = 2^(operand 비트 수) = 2^(10) x 1byte = 1024byte

 

 

1.3

그림 1-6과 같은 구성에서 CPU와 기억장치 간에 접속된 데이터 버스는 32비트이고, 주소 버스는 12비트라고 가정하자

(1) CPU가 기억장치로부터 한 번에 읽어올 수 있는 Data는 몇 byte인가?

데이터 버스의 크기 = 한 번에 처리할 수 있는 Data의 크기 = 32bit/8 = 4byte

 

(2) 기억장치의 주소가 byte 단위로 지정된다면, 최대 기억장치 용량은 몇 byte가 되는가?

최대 기억장치 용량 = 2^(주소 버스 크기) = 2^(12) = 4096byte

 

 

1.4

그림 1-6과 같은 구성에서 데이터 버스가 32비트이며, 기억장치의 용량은 64KByte라면, CPU와 기억장치 간에 접속되는 시스템 버스는 모두 몇 비트로 이루어져야 하는가?

기억장치 용량 = 64KByte ~> 2^(16)
-> 주소 버스 크기 = 16

CPU <-> 기억장치 간에 접속되는 시스템 버스 = 주소 버스, 데이터 버스
-> 주소 버스(16) + 데이터 버스(32) = 48bit

 

 

1.5

CPU가 프린터를 이용하여 데이터를 프린트하는 과정에 대한 흐름도를 표현하라

 

 

1.6

그림 1-11의 Analytical Engine의 기본 구조에서 아래의 컴퓨터 구성 요소에 대응되는 부분의 명칭을 쓰라

(1) CPU

- Mill

 

(2) 주기억장치

- Store

 

(3) 입력매체

- 카드 판독기

 

(4) 출력장치

- 카드 천공기/프린터

 

 

1.7

다음과 같은 분류에 속하는 컴퓨터들의 주요 용도를 2가지 이상씩 열거하라

(1) 임베디드 컴퓨터

  • 가전제품, 비디오 게임기, 모바일폰

 

(2) 슈퍼미니컴퓨터

  • 인터넷 웹 서버

 

(3) 슈퍼컴퓨터

  • 항공우주공학, 천문학, 핵공학, 인공지능