1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
anyanavicka [17]
4 years ago
6

Programming Assignment 2 Decimal and IEEE-754 ConversionsObjective: To write a C program (not C++) that converts numbers between

Decimal and IEEE-754 format and vice versa.Inputs: • Number in Decimal format (including special case of 0) • Number in IEEE-754 format (including special cases)Output: • Equivalent number in IEEE-754 format • Equivalent number in DecimalSpecification:The program converts a number based on choosing from a menu of choices, where each choice calls the appropriate procedure, where the choices are:1) Decimal to IEEE-754 conversion 2) IEEE-754 to Decimal conversion 3) Quit programSpecial Cases The program must also check for these special IEEE cases: • + 0 • -0 • + infinity • - Infinity • NaNSample test runThis sample run contains all possible cases that will be tested, either individually, in their own Test Bench, or combined in a single Test Bench.Test Inputs These are the input test values. They do not appear on the output of the run.1 2.5 2 40200000 1 0 2 -126 2 FFFFFFFF 3Test OutputFloating-point conversion:1) Decimal to IEEE-754 conversion 2) IEEE-754 to Decimal conversion 3) ExitEnter selection:Enter the decimal representation:*** Sign: 0 *** Biased exponent: 10000000 *** Mantissa: 01000000000000000000000 *** IEEE HEX: 40200000Floating-point conversion:1) Decimal to IEEE-754 conversion 2) IEEE-754 to Decimal conversion 3) ExitEnter selection:Enter the IEEE-754 representation:*** Sign: + *** Unbiased exponent: 1 *** Normalized decimal: 1.250000 *** Decimal: 2.500000Floating-point conversion: -1) Decimal to IEEE-754 conversion 2) IEEE-754 to Decimal conversion 3) ExitEnter selection:Enter the decimal representation:*** Sign: 0 *** Biased exponent: 00000000 *** Mantissa: 00000000000000000000000***The IEEE-754 representation is: 0.000000Floating-point conversion:1) Decimal to IEEE-754 conversion 2) IEEE-754 to Decimal conversion 3) ExitEnter selection:Enter the IEEE-754 representation:*** Sign: - *** Special case: NaNFloating-point conversion:1) Decimal to IEEE-754 conversion 2) IEEE-754 to Decimal conversion 3) ExitEnter selection:Enter the IEEE-754 representation:*** Sign: - *** Special case: NaNFloating-point conversion:1) Decimal to IEEE-754 conversion 2) IEEE-754 to Decimal conversion 3) ExitEnter selection:*** Program Terminated Normally"Assignment 2 Skeleton"#include #include /*************************/void "OPTION #1"(){ /* declare local variables */ /* prompt for floating point decimal number */ /* Check for 0--if so, print result */ /* Print sign: if number>0, sign is 0, else 1 */ /* take absolute value of number before generating significand */ /* Normalize number: while number >2, divide by 2, increment exponent while number <1, multiply by 2, decrement exponent */ /* Bias exponent by 127 and print each bit in binary with 8-iteration for-loop*/ /* Hide 1 and print significand in binary with 23-iteration for-loop*/ /* Print IEEE-754 representation */return;}/***********************************************************************/void "OPTION #2"(){/* declare local variables *//* prompt for IEEE-754 representation */ /* check for special cases: 0, -0, +infinity, -infinity, NaN, if so, print and return */ /* Mask sign from number: if sign=0, print "+", else print "-" */ /* Mask biased exponent and significand from number */ /* If biased exponent=0, number is denormalized with unbiased exponent of -126, print denormalized number as fraction * 2^(-126), return */ /* Unbias exponent by subtracting 127 and print */ /* Add hidden 1 and print normalized decimal number */ /* Print decimal number */ return;}int main(){/* declare local variables *//* until user chooses to quit, prompt for choice and select appropriate function */return 0;}
Engineering
1 answer:
kondaur [170]4 years ago
3 0

Answer:

// Program is written in C Programming Language

// Comments are used for explanatory purpose

// Program starts here

#include<stdio.h>

#include<math.h>

//Function to Convert to float

void To float(int num, int I)

{

//Create a kount variable

int kount;

// Start an iteration

for(kount=i-1; kount>0; kount--)

{

if((num>>kount) && 1) {printf("1");}

else { printf("0"); }

}

}

// Create a user defined variable

typedef union {// Definition

float Number;

struct

{

// Mantissa

unsigned int mant : 23;

// Exponent

unsigned int exp : 8;

// Sign

unsigned int sign: 1;

} raw;

} myfloat; // Variable name

// Create print segment

void printsegment(myfloat var)

{

printf("%d |", var.raw.sign);// Sign

To float(var.raw.exp,8); // Exponent

printf("|");

To float(var.raw.mant,8); // Mantissa

printf("\n");

}

// Function to Convert to Real

unsigned int ToReal(int* dig[], int l, int h)

{

unsigned int f = 0, I;

Start an iteration

for(I = h; I>=l;I--)

{

// Calculate individual value

f = f + dig[I] * pow(2,h-1);

}

return f;

}

// Main method start here

int main()

{

printf("Floating Point Conversion\n");

printf("Select any of the following options\n");

printf("1. Decimal to IEEE754 Conversion\n");

printf("2. IEEE754 to Decimal Conversion\n");

printf("3. Quit");

// Declare integer variable for option

int opt;

// Prompt to select option

printf("Select an option; Option 1 to 3: ");

scanf("%d", $opt);

if(opt == 1)

{

printf("You have selected option 1");

// Declare a user defined variable and a system defined variable

myfloat var; float number;

// Accept input

scanf("%d", number);

// Check for special cases

if(isnan(number/0.0))// Not a number

{

printf("Not a Number");

}

else

{

var.f = number;

// Print Sign

printf("%d | ", var.raw.sign);

// Print Exponent

ToFloat(var.raw.exp,8);

printf(" | ");

// Print Mantissa

ToFloat(var.raw.mant,23);

}

}// End of option 1;

// Beginning of option 2

else if(opt == 2)

{

printf("You have selected option 2");

// Declare an array and two integer variables

unsigned int number[32];

int ctrlno, I = 0;

// Accept input by through an iteration

for(int k = 0; k < 32; k++)

{

// Create a label

label: scanf("%d", ctrlno);

// Check for special cases

if(isnan(ctrlno/0.0))// Not a number

{

printf("Not a Number"); I++;

break;

}

else if(ctrlno>1 || ctrlno < 0)

{

printf("Invalid Number\n Please enter a valid digit");

goto label;

}

else {

// Assign number to array

number[k] = ctrlno;

}

// Check validity of number

if(I != 0)

{

printf(" Invalid Number Representation");

}

else

{

// Declare user defined variable

myfloat var;

// Get sign

var.raw.sign = number[0];

// Get mantissa; From to 31

unsigned f = ToReal(number,9,31);

var.raw.mant = f;

// Get exponent; 1 to 8

f = ToReal(number,1,8);

var.raw.exp = f;

// Print Output

printf("The converted digit is ");

printf("%f", var.f);

}

else

{

// Quit Application

break;

}

return 0;

}

You might be interested in
What is the resolution limit for a projection type of photolithographic system if the incident wavelength is 365 nm (the i-line
Vadim26 [7]

Answer:

Depth of field  = 347.619 nm

Explanation:

wavelenght =  365nm

N.A =0.63

k1= 0.6

so we have that the resolution limit is:

R=k1*A

R=0.6*365

R=219 nm

and the Depth of field needed for the best resolution is:

DoF = Resolution / N.A.

DoF= R/N.A

DoF= 219/0.63

DoF= 347.619 nm

7 0
3 years ago
4.54 Saturated liquid nitrogen at 600 kPa enters a boiler at a rate of 0.008 kg/s and exits as saturated vapor (see Fig. P4.54).
solmaris [256]

Answer:

hello the figure attached to your question is missing attached below is the missing diagram

answer :

i) 1.347 kW

ii) 1.6192 kW

Explanation:

Attached below is the detailed solution to the problem above

First step : Calculate for Enthalpy

h1 - hf = -3909.9 kJ/kg ( For saturated liquid nitrogen at 600 kPa )

h2- hg = -222.5 kJ/kg ( For saturated vapor nitrogen at 600 kPa )

second step : Calculate the rate of heat transfer in boiler

Q1-2 = m( h2 - h1 )  = 0.008( -222.5 -(-390.9) = 1.347 kW

step 3 : find the enthalpy of superheated Nitrogen at 600 Kpa and 280 K

from the super heated Nitrogen table

h3 = -20.1 kJ/kg

step 4 : calculate the rate of heat transfer in the super heater

Q2-3 = m ( h3 - h2 )

        = 0.008 ( -20.1 -(-222.5 ) = 1.6192 kW

6 0
3 years ago
20. What is a "whipping motion and why is it<br> used?
Reptile [31]
Whipping is done in a forward direction. You deposit a dab or puddle of metal down, and then whip the rod forward and up a little to let that dab cool a bit, then you move back and deposit another dab slightly ahead of the previous dab.
Cellulose rod like 6010 and 6011 are known as "fast freeze" electrodes, also known to be deep penetrating rods. The "whip and stitch" motion is used so that you get the full benefit of the cellulose characteristics. The forward motion basically gouges out the base metal, and it gets filled in with the back-step.
Hope this helped:)
6 0
4 years ago
A roadway with a rough-asphalt pavement has a cross slope of 2%, a longitudinal slope of 2.5%, a curb height of 8 cm, and a 90-c
DanielleElmas [232]

Answer:

b

Explanation:

5 0
3 years ago
How can pavement markings indicate that you are driving in the right direction?
Ann [662]

Answer:

There is a yellow line on your left and a white line on your right.

Explanation:

The yellow line between the roads separate the oncoming traffic lane, so the drivers won't get confused. Since the driver is on the right side of the road, the yellow line would be on their left, since the middle line (yellow line) is in the middle of the road.

6 0
2 years ago
Other questions:
  • This is problem 4 from chapter 6 of the course text. Find the Thevenin equivalent seen at the terminal A-B. Select which answer
    15·1 answer
  • How is the caliber of a rifle or handgun determined
    9·1 answer
  • When moving cylinders always remove and make
    8·1 answer
  • A "scale" is constructed with a 4-ft-long cord and the 10-lb block D. The cord is fixed to a pin at A and passes over two small
    14·1 answer
  • Which examples demonstrate common Energy Generation work environments? Check all that apply.
    12·1 answer
  • Determine if the fluid is satisfied​
    10·1 answer
  • Who invented engineering first?​
    12·1 answer
  • The minimum recommended standards for the operating system, processor, primary memory (RAM), and storage capacity for certain so
    12·2 answers
  • Người ta sử dụng hệ thống cô đặc 3 nồi xuôi chiều tuần hoàn tự nhiên để cô đặc dung dịch đường có suất lượng 10 tấn/giờ từ nồng
    6·1 answer
  • Anything that is made to meet a need or desire is?
    6·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!