The other strange thing about IEEE-754 is the exponent being biased, which is almost never used for pure integer representations. (Biased integers are not supported by C because their sign bit is 1 for positive numbers, but C requires it to be 0.)
I love IEEE-754 because it’s so trivially simple to understand at the surface level and at the same time deeply complex. A short standard followed by an enormous number of detailed, non-obvious corner cases that occur in the real world and that all had to be handled by the standard. And it has really stood the test of time!
It’s a good example of something produced by some very smart people with deep theoretical knowledge and deep experience in both things that had worked and even more things that had seemed like a good idea at the time but had turned out to be problematic in practice.
It’s a fascinating standard. The process was like the IETF’s but deeper, which is rarely possible.
(I realize the word “deep” was used a lot in this comment, but it seems appropriate)
C++ only recently (C++20 or 23) decided to declare that signed integers had to be twos-complemente.