컴퓨터과학입문 기출문제풀이
1번 문제 (10 points) Flip-flop 의 회로를 그림으로 표현하시 오. 이 회로에서 upper input 과 lower input 이 모 두 0 이라고 가정하자. Lower input 이 1로 변하게 되면 각 gate 의 output 이 어떻게 변하게 되는지 기술하시오.
2-3번 문제 (5 points) Byte 에서 LSB 와 MSB 가 무엇을 나타내는 지 기술하시오. LSB: Least Significant bit. 최하위비트. 가장 오른쪽 비트 MSB: Most Significant bit. 최상위비트. 가장 왼쪽 비트 (5 points) Seek time 과 rotational latency 를 설명하시 오. Seek time: 원하는 트랙(데이터)을 찾는 시간 Rotational latency: 그 이후부터 데이터 전송이 시작될 때까 지의 지연시간. Disk가 원하는 위치까지 회전하는데 걸리 는 시간
4번 문제 (10 points) Digital camera 의 저장 용량이 512 MB (Megabyte) 라고 가정하자. 사진 1장이 1024 개의 row 와 1024 개의 column 으로 구성되고 있고, 하 나의 pixel 이 4 byte 로 표현된다면, 이 digital camera 에는 최대 몇 장의 사진을 저장할 수 있나? (계산 과정을 함께 나타내시오) 사진 한장의 크기: 4 byte 210 (row) * 210 (column) = 4*220 512 MB / (4*220) = 512*220 / (4*220) = 128 장
5번문제 (10 points) Signed integer 를 표현하기 위해 N bits 을 사용한다고 가정하자. Excess notation 을 적용 할 경우, 표현할 수 있는 최대값과 최소값은 각각 무엇인가? 또한, excess 되는 크기는 얼마인가? (참고: excess-four notation 의 경우는 excess 되는 크기가 4).
5번문제 답 Excess N notation 최대값: 2N-1-1 최소값: -2N-1 Excess 되는 크기: 2N-1 All positive numbers begin with 1 The number of positive numbers: 2n-1-1 All negative numbers begin with 0 The number of negative numbers: 2n-1 0 is represented as 100…0 Smallest negative number is 00…0 Largest positive number is 11…1 Excess 되는 크기 (2#of bits –1) 답 최대값: 2N-1-1 최소값: -2N-1 Excess 되는 크기: 2N-1
6번문제 (10 points) 아래 주어진 floating-point format 을 이용하여, 각각의 bit pattern 을 decode 하시오. (Exponent 가 two’s complement notation 으로 표 현됨에 주의하시오.) 01101101 +, -2, 0.1101(2) 0.1101(2) * 2-2 = 0.001101(2) 11011100 -, -3, 0.1100(2) - 0.1100(2) * 2-3 = - 0.0001100(2)
7번문제 (15 points) 위에서 주어진 floating-point format 을 이용하여, 아래의 값들을 bit pattern 으로 변환하 시오. 변환 과정에서 truncation-error 가 발생한 값들은 무엇인가? 6 ½ : 00111101 13/16 : 00001101 9 : Error (Exponent에서 overflow 발생) 17/32 : 00001000 Truncation Error 15/16 : 00001111
8번문제 (5 points) CPU design 에서 RISC 와 CISC 의 차이를 기술하시오. RISC(Reduced Instruction Set Computer): a minimal set of machine instructions CISC(Complex Instruction Set Computer): a large number of complex instructions
9번문제 (15 points) Appendix C 의 machine language 를 사용하여 작성한 아래 프로그램이 main memory 의 30 (hexadecimal) 번지로부터 저장되어 있다. 이 프로그램이 무엇을 하는 프로그램인지 설명하시오. 2003 2101 2200 2310 1400 3410 5221 5331 3239 333B B248 B038 C000 Op- code Operand Description 1 2 3 4 5 6 7 8 9 A B C RXY 0RS RST R0X 000 LOAD the register R with the bit pattern found in the memory cell whose address is XY LOAD the register R with the bit pattern XY. STORE the bit pattern found in register R in the memory cell whose address is XY. MOVE the bit pattern found in register R to register S. ADD the bit patterns in registers S and T as though they were two’s complement representations and leave the result in register R. ADD the bit patterns in registers S and T as though there represented values in floating-point notation and leave the floating-point result in register R. OR the bit patterns in registers S and T and place the result in register R. AND the bit patterns in registers S and T and place the result in register R. EXCULSIVE OR the bit patterns in registers S and T and place the result in register R. ROTATE the bit pattern in register R one bit to the right X times. Each time place the bit that started at the low-order end at the high-order end. JUMP to the instruction located in the memory cell at address XY if the bit pattern in register R is equal to the bit pattern in register 0. Otherwise, continue with the normal sequence of execution. HALT execution.
9번문제 1st Iteration 2nd Iteration 3rd Iteration Size of each instruction is 2byte 메모리 주소는 바이트 단위 Program 30) 2003: Load r0 with 03 32) 2101: Load r1 with 01 34) 2200: Load r2 with 00 36) 2310: Load r3 with 10 38) 1400: Load r4 from m00 3A) 3410: Store r4 into m10 3C) 5221: r2 = r2 + r1 3E) 5331: r3 = r3+ r1 40) 3239: Store r2 into m39 메모리 주소 39번은 Instruction 메모리주소38번 에 저장되어 있는인스트럭션 1400의 뒤 2자리 38)14 39)00 42) 333B: Store r3 into m3B 44) B248: Jump to 48 if r2 == r0 46) B038: Jump to 38 if r0 == r0 48) C000: HALT 1st Iteration 메모리 00에서 읽고 10으 로 복사 2nd Iteration 메모리 01에서 읽고 11으 로 복사 3rd Iteration 메모리 02에서 읽고 12으 로 복사 답: Memory address 00, 01, 02에 저장된 값을 Memory 10, 11, 12에 복사
10, 11번문제 (5 points) Boot strapping 과정을 설명하시오. (5 points) Virtual memory 의 개념을 기술하고, 왜 page replacement 가 필요한지 설명하시오. 가상메모리: illusion of additional memory space by swapping programs and data back and forth between main memory and secondary storage CPU는 secondary storage에 바로 접근할 수 없고 필요한 데 이터와 프로그램을 메모리에 저장한 후에 접근 가능하다. 따라서 메모리를 점유하고 있는 필요없는 데이터나 프로 그램을 Secondary Storage에 저장하고 다른 필요한 데이터 나 프로그램을 메모리에 올리는 page replacement 방식을 사용한다.
12번 문제 (5 points) Time sharing system 에서 interrupt 발생 시 수행되는 동작들을 기술하시오. 인터럽트가 발생하면, 현재 진행 중인 machine cycle 을 끝내고, 현재 프로세스의 상태를 저장하고, 컨트롤 을 인터럽트 핸들러(is a part of Dispatcher )로 넘긴다. Dispatcher는 process table에서 ready proces를 하나 선 택하고, time circuit을 재시작한 다음, 선택한 process 를 시작시킨다.