| ||
There are multitudes of variations of multiplicative mnemonic manipulations. It seems almost every processor supports a slightly different scheme involving different integer word sizes, floating-point precision types, methods of rounding, with saturations, etc. Fundamentally, despite its variations, it is very similar to and uses the same methodologies as the addition detailed in the last chapter.
Notice the integer multiplication examples below. The example on the left requires more bits to contain the results of the operation and thus different methods have been implemented to reduce that value to its component size. The results of the floating-point multiplication in the other two examples follow the rules of the IEEE-754 standard for binary floating-point arithmetic. The result of a multiplication is stored with no increase in data containment size , but there is a penalty of a loss of precision.
Integer | Floating-Point | Expanded FP |
---|---|---|
3287565 | 3.28757e+006 | 3287570.0 |
Workbench Files: 4vec (Mul/Div) \qvmd3d\
project | platform |
3D (Mul/Div) \vmd3d\ | \vc6 |
4vec (Mul/Div) \qvmd3d\ | \vc.net |