#include <stdio.h>

struct floatstruct {
	unsigned mantissa: 23;
	unsigned exponent: 8;
	unsigned sign: 1;
} fs;

int main() {
	float f = 2.75;
	fs = *(struct floatstruct *)&f;
	printf("%x %x %x\n", fs.sign, fs.exponent, fs.mantissa);

	f = *(float *)&fs;
	printf("%f\n", f);

	return 0;
}
