#include <stdio.h>
#include <stdlib.h>
int getBit(int a, int location) {
int result = a & 1 << location;
if (result == 0) {
return 0;
}
return 1;
}
int main()
{
// 1 sign bit | 8 exponent bit | 23 fraction bits
// 0 10000000 10010001111010111000011
float f = 3.14f; // 01000000_01001000_11110101_11000011
int* n = &f;
for (int i = 31; i >= 0; i--) {
printf("%d", getBit(*n, i));
}
return 0;
}
// https://www.h-schmidt.net/FloatConverter/IEEE754.html
/*
run:
01000000010010001111010111000011
*/