|
|
@ -17,7 +17,7 @@ struct data |
|
|
|
struct datad { |
|
|
|
union { |
|
|
|
double dnum; |
|
|
|
unsigned long lnum; |
|
|
|
unsigned long long lnum; |
|
|
|
} number; |
|
|
|
unsigned long sign; |
|
|
|
unsigned long exponent; |
|
|
@ -111,12 +111,12 @@ float addition_float(float number1, float number2) { |
|
|
|
return num3.number.floating; |
|
|
|
} |
|
|
|
|
|
|
|
unsigned long sign_double(unsigned long a) { |
|
|
|
unsigned long long sign_double(unsigned long long a) { |
|
|
|
if (a & 0x8000000000000000 == 0x8000000000000000) return 1; |
|
|
|
else return 0; |
|
|
|
} |
|
|
|
|
|
|
|
unsigned long precision_double(unsigned long a) { |
|
|
|
unsigned long long precision_double(unsigned long long a) { |
|
|
|
a &= 0x000fffffffffffff; |
|
|
|
return a; |
|
|
|
} |