Collecting values for certain time and store it once
You are getting ahead of yourself.

First specify what exactly needs to be stored with what precision and range.  Does it really need to be floating point?  Very likely you don't need either the resolution or dynamic range, probably neither.

For example, if these are voltage measurements from 0-10 V measured with a 12 bit A/D, then you don't have more than 12 bits of real information.  In this example, you could store the raw A/D readings directly, or use a common format like integer millivolts.

Added

You now say these values are derived from 24 bit A/D readings.  If storage size is important, you can use a 24 bit representation (Are all 24 bits really meaningful? Probably not) and store two of them every 3 words.  For more convenience but 1/3 more memory usage, use two whole words for each reading.  I'd pick a convenient unit and zero offset and store the readings as 32 bit integers.  Floating point is a bit silly in this case, but that's only 32 bits too.

Either way you have 32 bits, or two words, to write to the non-volatile memory for each reading.  In any case, I fail to see a problem here.  It doesn't matter whether you write the two words in high-low or low-high order as long as you are consistant and the reader follows the same scheme.  Again, what exactly is the problem?