To drbitboy...
I tested MUL and then DIV using 16777215/16777216 and 8388607/8388608, and the more complicated one you wrote yesterday, I think results of them were good, just that I saw the calculated limits are not always the same numbers across these three methods. Do you know why?
For example, 0.016+0.001 is 0.017, which is true for a direct ADD instruction, but after MUL & DIV 16777215(6) it became 0.01700003, and it may be another number for 8388607(8) (if not 0.016 & 0.001 combination), and I can see the latter number may be a little wider in range.
At the same time BUMP AOI would (may) give another number apart from 0.01700003 as well.
Anyway, I decided to go with the 8388607(8) trick, if you would suggest I can do more test tomorrow, which is the last day I can access a PLC in the next few days upcoming.