I have a few questions about doubles:

The way I understand it, a double is a sign bit, followed by an 11 bit integer exponent, and 53 bit mantissa. The exponent is stored as an unsigned int, and is biased by -1023 when it is interpreted as a double.

So, to my understanding, in memory a double looks like:

sign bit - 11 bit UNSIGNED integer - 53 bit mantissa

Is it true that the exponent is always unsigned until it is interpreted? Or is there even any real difference between the stored bits and the interpreted value besides the fact that the unsigned int is read as a signed one?

This question is not very clear I don't think.... Hm.

If I compare the bits of two exponents directly in memory, and one of them is -1 after the bias is applied and the other is 1, will -1 appear to be larger than 1, for example?

or am I misunderstanding something fundamental here (more likely :P)