#include #include #include int main (void) { float vissza; float fl;//, fl2; fl = -2.34f; int *iptr = (int * )&fl; int fract = (*iptr >> 0) & 0x7FFFFF; int exp = (*iptr >> 23) & 0xFF; int sign = (*iptr >> 31) & 0x1; printf("fract=%d, exp=%d, sign=%d\n", fract, exp, sign); int i = 1; while (1<= (fract / pow(10, i))) i++; printf("0.something=%f\n", pow(10, -i)*fract); vissza = (sign == 0 ? 1 : -1) * ((pow(10, -i)*fract+1) * pow(2,((int)exp-127))); printf("float=%f\n", vissza); return 0; }