Note: the following is for normal values. The rules for denormals, infinites or NaNs are different, but not relevant for the value 3.

The mantissa (a.k.a. significand) is stored as 1. plus a fraction. The 1 is "always" there, so it is not stored. The fraction is stored as top bit 0.5 (2^-1), next bit 0.25 (2^-2), etc.

3 is stored as 1.5 * 21. The 1. is not stored, so only the 0.5 bit is stored, which is what you see. All following (lower order) bits are 0. The exponent is 0x400, which is 1 + the bias of 1023 (0x3FF), or binary: 100 0000 0000. The sign bit is 0 (for not-negative).

How this is stored physically, depends on the endianness of your system. Little-endian systems store the low byte first (the last 0), big-endian systems store the top byte first (the sign bit and the top bits of the exponent).

The textual representation in bits is independent of that. The sign bit is always the top bit, always displayed on the left, the exponent the bits below that and below that the mantissa.

That value is independent of endianness (just like the integer value decimal 12345 is independent of endianness, it is and remains the number 12345, no matter how you store it). But if we start storing the value, the order of the bytes becomes important.

In big-endian, this is stored as the following 8 consecutive bytes:

0x40 0x08 0x00 0x00 0x00 0x00 0x00 0x00

In little-endian, this is stored as the following 8 consecutive bytes:

0x00 0x00 0x00 0x00 0x00 0x00 0x08 0x40

Email codedump link for Does floating point mantissa store bits right to left