Question: Exercise 3.12 Floating-point multiplication is even more complicated and challenging than fl oating-point addition, and both pale in comparison to fl oating-point division. A B

Exercise 3.12 Floating-point multiplication is even more complicated and challenging than fl oating-point addition, and both pale in comparison to fl oating-point division.

A B

a. 5.66015625 x 100 8.59375 x 100

b. 6.18 x 102 5.796875 x 101 3.12.1 [30] <3.5> Calculate the product of A and B by hand, assuming A and B are stored in the 16-bit NVIDIA format described in Exercise 3.11.2 (and also described in the text). Assume one guard, one round bit and one sticky bit, and round to the nearest even. Show all the steps; however, as is done in the example in the text, you can do the multiplication in human-readable format instead of using the techniques described in Exercises 3.4 through 3.6. Indicate if there is overfl ow or underfl ow. Write your answer as a 16-bit pattern, and also as a decimal number.
How accurate is your result? How does it compare to the number you get if you do the multiplication on a calculator?
3.12.2 [60] <3.5> Write a MIPS assembly language program to calculate the product of A and B, assuming they are stored in IEEE 754 format. Indicate if there is overfl ow or underfl ow. (Remember, IEEE 754 assumes one guard, one round and one sticky bit, and rounds to the nearest even.)
3.12.3 [60] <3.5> Write a MIPS assembly language program to calculate the product of A and B, assuming they are stored using the format described in Exercise 3.11.1. Now modify the program to calculate the sum assuming the format described in Exercise 3.11.3. Which format is easier for a programmer to deal with?
How do they each compare to the IEEE 754 format? (Do not worry about sticky bits for this question.)
The following table shows further pairs of decimal numbers.
A B

a. 3.264 x 103 6.52 x 102

b. –2.27734375 x 100 1.154375 x 102 3.12.4 [30] <3.5> Calculate by hand A divided by B. Show all the steps necessary to achieve your answer. Assume there is a guard, round, and sticky bit, and use them if necessary. Write the fi nal answer in both 16-bit fl oating-point format and in decimal and compare the decimal result to that which you get if you use a calculator.
The Livermore Loops are a set of fl oating-point intensive kernels taken from scientifi c programs run at Lawrence Livermore Laboratory. The following table identifi es individual kernels from the set.
You can fi nd them at http://www.netlib.org/benchmark/livermore.

a. Livermore Loop 1

b. Livermore Loop 7 3.12.5 [60] <3.5> Write the loop in MIPS assembly language.

3.12.6 [60] <3.5> Describe in detail one technique for performing fl oating-point division in a digital computer. Be sure to include references to the sources you used.

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Computer Organization And Design Questions!