I know, the question seems to be strange. Programmers sometimes think too much. Please read on...
In C I use signed
and unsigned
integers a
I believe the unsigned int was created because of the need for a larger value margin than the signed int could offer.
A float has a much larger margin, so there was never a 'physical' need for an unsigned float. And as you point out yourself in your question, the additional 1 bit precision is nothing to kill for.
Edit: After reading the answer by Brian R. Bondy, I have to modify my answer: He is definitely right that the underlying CPUs did not have unsigned float operations. However, I maintain my belief that this was a design decision based on the reasons I stated above ;-)