But it will still be useful for others that have processors with DSP and floating point capabilities, or at least to understand some things.
Well, at least for me, your long post there actually quite useful since I use ARM M4F 80 Mhz core (still learning though ) which has a dedicated FPU and with all the whole shebang for hardware based floating point operations in it.
At least the effort was not in vain
I guess I could follow up with how to implement double/float arithmetic in assembler (C and C++ can't really do carries directly), I also find it amazing that my ZX spectrum dedicated a big chunk of their precious ROM to handle the basic float arithmetic with different mantissas and all, I mean 512 bytes of code is just atrocious when you have only 64K of memory, it's almost a percent of the whole memory space!
Well to be real, it's more than 512 bytes since their extra math, like trig, exponent square root, etcetera routines took way more than just half a kilobyte, now we are talking 4K with all those trig and exponent tables and that's a whole 6.25% of resources for 16 bit address space.
Anyways, say you have a 3.3V Vref voltage that will be 11.01(0011)b and the parenthesis mean periodic, meaning the 0011 pattern can be saved and the multiplication of that can be stored and just shifted 4 bits right and added to get the whole thing.
Since I don't want to confuse the matter too much more I'll just go with 5V Vref since it will be easier 5d=101b meaning copy the mantissa shift left 2 bits and add the original mantissa. the result? your double or float in Volts, but that's just too much work to do to get an accurate reading I guess.
I could go on detail how to perform fast floating point math with assembler since before the 8087 no one use floats then I guess it's not worth it
But a hint for all, if you work with normalized vector components (0.0 to 1.0) math gets really easy for multiplication, adds and subtracts; divisions a bit more cumbersome but not that hard either. Math co-processors are indeed optimized for doing general math but I'm not talking about getting e^pi-pi = 20.00000000 scenario in here and yeah our dear 8087 gets 19.999099979189475767266442984669 as a result as well.
Edit: the e^pi-pi is really a joke and a well known mathematical coincidence. Do not try to solve it or prove it.