Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

A EASY C LANGUAGE PROBLEM You have been assigned the task of writing a C function to compute a floating point representation of 2^x .

A EASY C LANGUAGE PROBLEM

You have been assigned the task of writing a C function to compute a floating point representation of 2^x . You decide that the best way is to do this is to directly construct the IEEE single precision representation of the result. When x is too small, your routine will return 0.0. When x is too large, it will return +. Fill in the blank portions of the code that follows to compute the correct result. Assume the function u2f returns a floating point value having an identical bit representation as its unsigned argument. Show work. float fpwr2(int x) {

/* Result exponent and fraction */

unsigned exp, frac;

unsigned u;

if (x < ________) {

/* Too small. Return 0.0 */

exp = ________;

frac = ________;

} else if (x < ________) {

/* Denormalized result */

exp = ________;

frac = ________;

} else if (x < ________) {

/* Normalized result. */

exp = ________;

frac = ________;

} else

/* Too big. Return + */

exp = ________;

frac = ________;

}

/* Pack exp and frac into 32 bits */

u = exp << 23 | frac;

/* Return as float */

return u2f(u)

}

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

Microsoft Visual Basic 2005 For Windows Mobile Web Office And Database Applications Comprehensive

Authors: Gary B. Shelly, Thomas J. Cashman, Corinne Hoisington

1st Edition

0619254823, 978-0619254827

More Books

Students also viewed these Databases questions