Multiplying a number by 10 is the equivalent of
- a) Multiplying the original number by 2
- b) Multiplying the original number by 8
- c) Adding the results of (a) and (b).
This works because to is binary 1010
.
One approach would therefore be to increment the exponent (for (a)), add 3 to the exponent (for (b)), then add the results.
To multiply by 10^n, repeat the above n times. Alternatively work out the binary representation of 1,000, 1,000,000, etc, and add the relevant 1s. You may make things easier by noting that 1000 for instance 1024 (for instance) is 1024 - 16 - 8, i.e.
- a) Add 10 to the exponent of the original to multiply by 1024
- b) Add 4 to the exponent of the original to multiply by 16
- c) Add 3 to the exponent of the original to multiply by 8
- d) From (a) subtract (b) and (c) to get the answer.
Again, you can do that multiple times for 10^6, 10^9 etc.
For a quick approximation and powers of n which are multiples of 3, just add 10n/3 to the exponent (as 1024 ~= 1000)