|
|||||||||||
|
Integer and Floating Point
Calculations FAQ [an error occurred while processing this directive] Introduction So you've got a Pocket PC, Handheld PC or Palm-size PC and you want to know more about how it calculates math? This FAQ helps explain what is going on under the covers of your device when it calculates any math function. What is Integer and Floating Point Math? Computers see Math as two major categories - integer and floating point. Integer math results in a round number (ie: a number without a decimal) and has a limited size based on whether it is a short integer (usually 2 bytes) or a long integer (usually 4 bytes). Floating point math results in a number with a decimal point or a large number that can not be represented as an integer. What does a RISC Computer Use? The Pocket PC, Handheld PC and Palm-size PCs use RISC (reduced instruction set computer) microprocessors. These processors usually do not include instructions to perform floating point math like the PC does since Intel integrated their math coprocessor with the 486DX and all later versions. So the RISC processor model is to use multiple integer functions to perform floating point math. Some RISC processors use a barrel roller to allow the processor to perform fast integer multiplication. In more complex RISC processors they support a built-in math coprocessor. Floating Point Library Part of the design of Windows CE is that Microsoft provides a floating point library as part of the operating system. This floating point library requires many more cycles to calculate functions than using a built-in math coprocessor which is optimized to calculate these numbers very quickly. Also these libraries address common math functions like SIN, COS, TAN, etc that are commonly used in calculations. This method trades system performance for microprocessor simplicity. This is why users will see calculations in Pocket Excel that take much longer than on a PC of similar clock speed to their Pocket PC. Conclusion So now you know why Windows CE calculates floating point math is much slower than the PC. So I believe that in the future, the hardware designers using Windows CE should consider providing a math coprocessor and or a much higher clock rate to meet users expectations about performance. [an error occurred while processing this directive] |