COSC 3330/6308 First Review Session

Post on 06-Feb-2016

29 views 0 download

Tags:

description

COSC 3330/6308 First Review Session. Fall 2012. First Question. Simplify the following Boolean expression. w (v x y + y) +w' y + v w x + y. Answer. w (v x y + y) +w' y + v w x + y = v w x y + w y + w' y + v w x + y. v w x y + w y + w' y + v w x + y. Answer. - PowerPoint PPT Presentation

Transcript of COSC 3330/6308 First Review Session

COSC 3330/6308First Review Session

Fall 2012

First Question

Simplify the following Boolean expression. – w (v x y + y) +w' y + v w x + y

Answer

w (v x y + y) +w' y + v w x + y =v w x y + w y + w' y + v w x + y

Answer

v w x y +w y + w' y + v w x + y

v'w' v'w vw vw'

x'y'

x'y

xy

xy'

Answer

v w x y +w y + w' y + v w x + y

v'w' v'w vw vw'

x'y' 0 0 0 0

x'y 1 1 1 1

xy 1 1 1 1

xy' 0 0 1 0

Answer

v w x y +w y + w' y + v w x + y

v'w' v'w vw vw'

x'y' 0 0 0 0

x'y 1 1 1 1

xy 1 1 1 1

xy' 0 0 1 0

Answer

By Karnaugh maps:– v w x + y

By algebra:

– w (v x y + y) +w' y + v w x + y =v w x y + w y + w' y + v w x + y =y (v w x + w + w' + 1) + v w x =y + v w x

Second Question

Give a simplified implementation for the following expression using only NAND gates.

– w' (x y) + w x y' + x' y'

Answer

w' (x y) + w x y' + x' y' =w' (x' y + x y') + w x y' + x' y' =w' x' y + w' x y' + w x y' + x' y'

Answer

w' x' y + w x y' + w' x y' + x' y'

w' x' + y'

x'y' x'y xy xy'

w' 1 1 0 1

w 1 0 0 1

Answer

Using algebra:

– w' (x y) + w x y' + x' y' =w' (x' y + x y') + w x y' + x' y' =w' x' y + w' x y' + w x y' + x' y' =w' x' y + x y' (w' + w) + x' y' =w' x' y + x y' + x' y' =w' x' y + y' =w' x' y + w' x' y' + y' =w' x'( y + y') + y' = w'x' + y'

Reminder

A NAND B = (A B)' = A' + B'

(NOT A) NAND(NOT B) ( A' B')' = A+ B

NOT(A NAND B) = (A B)'' = A B

(A NAND B) NAND (C NAND D) =((AB)' (CD)')' = AB + CD

Answer

w'

x'

y

(w'x')' = w + x

((w + x)y)' = w'x' + y'

Third Question (I)

What is the main reason for using a base plus displacement representation of memory addresses in an instructions set?

Answer

What is the main reason for using a base plus displacement representation of memory addresses in an instructions set?

– To be able to access a very large address space with as few bits as possible in order to keep instructions as short as possible MIPS IS uses 5 bits to specify which register and

16 bits for the displacement

Third Question (II)

What is the main reason for requiring all instructions to have the same length?

– To allow the CPU to fetch the next instruction before the current instruction is decoded Would not work if we had 16-bit and 32-bit

instructions

Fourth Question

Assume we have a very basic microprocessor doing 4-bit arithmetic.

How would you represent the decimal value – 8 in signed arithmetic?

Answer

How would you represent the decimalvalue – 8 in signed arithmetic?

– 1000

Fourth question (II)

What would be its result of adding 0100 to 0101 assuming that the numbers being added were

Unsigned integers? Signed integers?

Answer

What would be its result of adding 0100 to 0101 assuming that the numbers being added were

– Unsigned integers?– Signed integers?

0100 + 0101 = 1001– 1001 represents 9 in unsigned arithmetic– 1001 represents -7 in signed arithmetic

Explanation

We use two complement's arithmetic– To change the sign of a positive value

Negate all its bits then add 1– To change the sign of a positive value

Negate all its bits then add 1 For 1001 we do

– not(1001) + 1 = 0110 + 1 = 0111 = 7

Fifth question

Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice.

Answer

Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice.

– How many flip-flops do we need?

Answer

Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice.

– How many flip-flops do we need? Two because we have 22 =4 states

Answer

Implement a two-bit counter going to the cycle 00, 01, 10, 11, 00, … when its input is on. You may use the flip-flops and the gates of your choice.

– How many flip-flops do we need? Two because we have 22 =4 states

Answer

Draw the Karnaugh maps for these flip-flops:

– Least significant bit y

x'y' x'y xy xy'

i

i'

Answer

Draw the Karnaugh maps for these flip-flops:

– Least significant bit y

x'y' x'y xy xy'

i' 0 1 1 0

i 1 0 0 1

Answer

Draw the Karnaugh maps for these flip-flops:

– Most significant bit x

x'y' x'y xy xy'

i'

i

Answer

Draw the Karnaugh maps for these flip-flops:

– Most significant bit x

x'y' x'y xy xy'

i' 0 0 1 1

i 0 1 0 1

Answer

The system equations are – y = y i– x = x iy = x(i' + y') + x' iy

Answer

We will use T flip-flops for x and y– y will be triggered by input i– x will be triggered by input iy

Answer

Sixth Question (I)

Which decimal values are stored in the following single precision floating point numbers?

1 129 010000000000000000000000000…

0 124 10000000000000000000000000…

Sixth Question (II)

Sign is negative Exponent is 129 -127 = 2 Coefficient is 1.01two = 1 + ¼ - (1 + ¼) 22 = -5

1 129 0100000000000000000000000000…

Sixth Question (III)

Sign is positive Exponent is 124 – 127 = -3 Coefficient is 1.1two = 1+ ½ = 1.5 1.5 2-3 =1.5/8 = 3/16

0 124 10000000000000000000000000…

Seventh Question

Multiply the two following floating-point numbers:

1 129ten 000000000000000000000 …

0 129ten 000000000000000000000 …

Answer

Multiply the two following floating-point numbers:

– Compute the new sign– Add the exponents– Multiply the coefficients

1 129ten 000000000000000000000 …

0 129ten 000000000000000000000 …

Answer

Multiply the two following floating-point numbers:

– Compute the new sign: Negative– Add exponents: (129 – 127) + (129- 127)– Multiply the coefficients: 11

1 129ten 000000000000000000000 …

0 129ten 000000000000000000000 …

Answer

Result is -1 24

– Sign bit is 1– Biased exponent is 127 + 4 =131– Coefficient is 1

1 131ten 0000000000000000000000…