Microsoft KB Archive/36069

From BetaArchive Wiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Results Differ for Alternate & Coprocessor/Emulator Math

Q36069

5.10 6.00 6.00a 6.00ax 7.00 | 5.10 6.00 6.00a | 1.00 MS-DOS | OS/2 | WINDOWS kbprg ---------------------------------------------------------------------- The information in this article applies to: - The C Run-time (CRT) included with: - Microsoft C for MS-DOS, versions 5.1, 6.0, 6.0a, and 6.0ax - Microsoft C for OS/2, versions 5.1, 6.0, and 6.0a - Microsoft C/C++ for MS-DOS, version 7.0 - Microsoft Visual C++ for Windows, version 1.0 ---------------------------------------------------------------------- SUMMARY ======= The coprocessor/emulator math library and the alternate math library may produce different results for floating-point calculations. MORE INFORMATION ================ When an application uses the coprocessor to perform floating-point arithmetic, it pushes all values onto the coprocessor stack. The stack holds only 10-byte real values. Therefore, any 4-byte or 8-byte real (double) values are expanded to 10-byte reals before any operations are performed. The emulator library performs the same expansion. The results are converted back to a 4-byte or 8-byte real value as appropriate. The alternate math library performs calculations directly using 4-byte or 8-byte real values which can result in less calculation precision than that available with the coprocessor/emulator math library. Additional reference words: kbinf 5.10 6.00 6.00a 6.00ax 7.00 1.00 KBCategory: kbprg KBSubcategory: CRTIss

Keywords : kb16bitonly
Issue type :
Technology : kbVCsearch kbAudDeveloper kbCRT


Last Reviewed: May 5, 2001
© 2001 Microsoft Corporation. All rights reserved. Terms of Use.