# Final Exam -- 12 December, 1995

## Problem 1. (4 points)

Convert the decimal number 89 into a binary number.

## Problem 2. (4 points)

Convert the binary number 110110011 into a decimal number.

## Problem 3. (4 points)

Represent the decimal number -100 as a twelve-bit two's complement binary number .

## Problem 4. (8 points)

Convert the decimal number 14.62 into a floating point number with one sign bit, an eight-bit exponent expressed using excess-127 notation, and a 23-bit mantissa.

## Problem 5. (8 points)

Use truth tables to show that the following two Boolean expressions are equivalent:

• A (A C + A' C) (B + C)
• A C

## Problem 6. (8 points)

Now, simplify the following Boolean expression, from the previous problem, using Boolean algebra. It is very important to show your work!

• A (A C + A' C) (B + C)

## Problem 7. (8 points)

Simplify the following Boolean function using a Karnaugh map. Notice the don't care conditions!

• F(a, b, c, d) = Sigma(1, 4, 7, 9, 10, 14)
• F(a, b, c, d) = d(3, 8, 11, 13, 15)

## Problem 8. (3 points)

How many different values can be stored in an eight-bit register.

## Problem 9. (3 points)

Draw the symbol used in diglog to represent an input pad, the thing your mashed to generate a zero or one, in the space below.

## Problem 10. (10 points)

If registers S and T have the following values:

• S = 0011110011
• T = 1111100000

what are their values after each of the following RTL statements are performed

• S <- S and T, T <- S-T
• T <- asl S

where asl is the arithmetic shift left operator.

## Problem 11. (8 points)

Show the hardware needed to implement the following RTL statements for eight-bit registers A and B:

• p: A <- A+1, B <- A
• q r: A <- A-1

You may use eight-bit adders, eight-bit multiplexers, eight-bit registers, and assorted logic gates in your solution.

## Problem 12. (5 points)

Look at Figure 5-4 on page 130 of the textbook, if

• S2 S1 S0 = 001
• LD of IR is set
• LD of PC is set
• INR of DR is set

what happens in the next bus transaction?

## Problem 13. (5 points)

How would you set the control inputs of the bus system shown in Figure 5-4 on page 130 of the textbook to execute the following RTL statement?

• M[AR] <- DR, DR <- 0

## Problem 14. (5 points)

Suppose the following 16 bits hexadecimal values is stored in the memory of the "basic computer" described in Table 5-2 on page 133 of the textbook.

• A200

What action is performed when this word in executed as an instruction?

## Problem 15. (5 points)

Do you think there are more microcode programmers than assembly language programmers? Justify your answer.

## Problem 16. (12 points)

Write a procedure in the textbook's assembly language, using the calling conventions described in Section 6-7 (pp. 200-202), equivalent to the following C subroutine

```     int useless(int a)
{
if (a & 1)
return(a) ;
else
return(a+1) ;
}
```

Hint for the non-C experts: This function returns a, if a is odd, and a+1, if a is even.

Back to the Handout index