CSCI 232 Exam 2

Spring 2003

 

Instructions:  The usual…this is a closed book, closed notes, closed neighbor, open mind exam.  If necessary you may use your calculator, although you shouldn’t need to.  Not counting the bonus, there are 100 points on this test.  Read through the entire test before beginning work on any problem in order to best plan how to use your time to maximize your score.  Each problem is worth 10 points, but some are very easy and require short answers, and some are harder or require more writing.  Do the easy ones first!!  You have 50 minutes to complete this test.

 

1.     (10 points) Name the three types of shift operations and describe the operation of each.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2.     (10 points) What are the reasons for having hardware support for a stack in our processor?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3.     (10 points) Give examples of zero, one, two, and three address instructions to add two numbers stored in variables A and B and store the result in the variable C.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4.     (10 points) Give three examples of status registers, and describe what they indicate and how they are computed.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

5.     (10 points) Show how RISC processors can effectively do one instruction per clock cycle when it takes a cycle to fetch the instruction, a cycle to decode it, and a cycle to execute it.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6.     (10 points) Describe the way a RISC processor uses registers and execution reordering to speed up the execution of jumps and subroutine calls.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

7.     (10 points) Why would a computer designer use RAM for storing microcode for a processor?

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8. (10 points) Describe a way of implementing subroutine calls if your processor does not have a hardware stack.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

9.     (10 points) Give the RTL for our simple processor that we talked about in class to do an instruction fetch.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10.  (10 points) Sketch a method of generating the timing signals in the control unit for each state in the instruction fetch/execute process.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Bonus: (10 points…do this one ONLY after you have finished the other problems on the test)  If a hen and a half can lay an egg and a half in a day and a half, how many eggs can three hens lay in six days?