27.7 Using floating point instructions to do integer operations (PPlain and PMMX)
Integer multiplication (PPlain and PMMX)
Floating point multiplication is faster than integer multiplication on the PPlain and PMMX, but the price for converting integer factors to float and converting the result back to integer is high, so floating point multiplication is only advantageous if the number of conversions needed is low compared with the number of multiplications. (It may be tempting to use denormal floating point operands to save some of the conversions here, but the handling of denormals is very slow, so this is not a good idea!)
On the PMMX, MMX multiplication instructions are faster than integer multiplication, and can be pipelined to a throughput of one multiplication per clock cycle, so this may be the best solution for doing fast multiplication on the PMMX, if you can live with 16 bit precision.
Integer multiplication is faster than floating point on PPro, PII and PIII.
Integer division (PPlain and PMMX)
Floating point division is not faster than integer division, but you can do other integer operations (including integer division, but not integer multiplication) while the floating point unit is working on the division (See example above).
Converting binary to decimal numbers (all processors)
Using the FBSTP instruction is a simple and convenient way of converting a binary number to decimal, although not necessarily the fastest method.