It is common to sneak a floating-point number into a data block by packing it into the bits that would be otherwise occupied by integers.
In this case, your floating point value is a "IEEE 754 Single Precision Floating Point" value, 32 bits in length.
It's being packed using a Bit Field Distribute (BTD) instruction, into two 16-bit signed integers, which would be 15 data bits and a Sign bit if they represented Integers. RSLogix shows you the decimal value of that data if it were encoded as an integer. But it's not.
You already understand how integers are represented by each bit, in
Two's Complement Binary: the data bits each represent a power of 2: 2^0, 2^1, 2^2.... and so on, and the Sign bit inverts them all.
But IEEE 754 works differently, and the communications link is really just passing an array of bits: it doesn't do any conversion or interpretation. So we have to think about those two "integers" as an array of bits that encode an IEEE 754 value. There are three segments of that group of 32 bits: the sign bit, 8-bit "exponent", and the 23-bit "mantissa" (aka "significand" or "fraction").
I'm not going to try to explain it because I'm a lousy teacher. But here's a couple links to guys who are good teachers:
https://www.h-schmidt.net/FloatConverter/IEEE754.html
https://mathcenter.oxford.emory.edu/site/cs170/ieee754/