#include #include void print_digit(int dig) { if (dig) { cout << "1"; } else { cout << "0"; } } void print_float(float x){ int i,j,base; unsigned char * ch; int bc; ch = (unsigned char * ) &x; cout << setw(10) << x<< " "; bc = 0; for(j=3;j>=0;j--) { base=128; for (i=0;i<8;i++){ print_digit(base & ch[j]); base = base/2; bc++; if (bc == 1) { cout << " "; } if (bc == 10) { cout << " "; } } bc++; if (bc == 10) { cout << " "; } } cout << endl; } int main () { float x; cout << " A float is " << sizeof (x) << " bytes " << endl; for (x=-2;x<35;x+=1){ print_float(x); } print_float(0.5); print_float(0.25); print_float(0.125); }