Computer Networking: A Top-Down Approach (7th Edition)
Computer Networking: A Top-Down Approach (7th Edition)
7th Edition
ISBN: 9780133594140
Author: James Kurose, Keith Ross
Publisher: PEARSON
Bartleby Related Questions Icon

Related questions

Question

The code I have given is the code that was required for these sections Which I have finished 

 

 I just need help with the highlighted bullet points sections so what I really need help with is understanding why I had to do the code in this way 



#include <stdio.h>

struct Single

{

    int num;

};

 

void printSingle(int f)

{

    int binaryNum[33];

    int i = 0;

    while(f>0)

    {

        binaryNum[i] = f % 2;

        f = f/2;

        i++;

    }

    for (int j=i-1; j>= 0; j--)

    {

        printf("%d",binaryNum[j]);

    }

}

 

int main()

{

    struct Single single;

    single.num = 33;

    printf("Number: %d\n",single.num);

    printSingle(single.num);

    return 0;

}

P.1 Floating-point struct
Define a struct Single that describes the bit layout for a single-precision floating-point
number.
You will need to use bit fields in the struct. Notice that you need to consider little-endian
vs. big-endian.
Why does endian matter here and not for part 2?
P.2 Printing floating-point parts
Define a method called void printSingle(float f) that will print the parts of the
floating-point number as distinct values.
To place the float into the struct, use a pointer cast or a union. For example, using a
pointer cast to interpret the bits of a floating-point number as an integer
To print a floating-point number in printf, you typically use %f.
• Describe how pointer casting works to get the value into a different format.
Describe how you could break apart a floating-point number into parts using
bitwise operators? Would that care about endian?
expand button
Transcribed Image Text:P.1 Floating-point struct Define a struct Single that describes the bit layout for a single-precision floating-point number. You will need to use bit fields in the struct. Notice that you need to consider little-endian vs. big-endian. Why does endian matter here and not for part 2? P.2 Printing floating-point parts Define a method called void printSingle(float f) that will print the parts of the floating-point number as distinct values. To place the float into the struct, use a pointer cast or a union. For example, using a pointer cast to interpret the bits of a floating-point number as an integer To print a floating-point number in printf, you typically use %f. • Describe how pointer casting works to get the value into a different format. Describe how you could break apart a floating-point number into parts using bitwise operators? Would that care about endian?
Expert Solution
Check Mark
Knowledge Booster
Background pattern image
Recommended textbooks for you
Text book image
Computer Networking: A Top-Down Approach (7th Edi...
Computer Engineering
ISBN:9780133594140
Author:James Kurose, Keith Ross
Publisher:PEARSON
Text book image
Computer Organization and Design MIPS Edition, Fi...
Computer Engineering
ISBN:9780124077263
Author:David A. Patterson, John L. Hennessy
Publisher:Elsevier Science
Text book image
Network+ Guide to Networks (MindTap Course List)
Computer Engineering
ISBN:9781337569330
Author:Jill West, Tamara Dean, Jean Andrews
Publisher:Cengage Learning
Text book image
Concepts of Database Management
Computer Engineering
ISBN:9781337093422
Author:Joy L. Starks, Philip J. Pratt, Mary Z. Last
Publisher:Cengage Learning
Text book image
Prelude to Programming
Computer Engineering
ISBN:9780133750423
Author:VENIT, Stewart
Publisher:Pearson Education
Text book image
Sc Business Data Communications and Networking, T...
Computer Engineering
ISBN:9781119368830
Author:FITZGERALD
Publisher:WILEY