On 03/22/2018 07:11 AM, Jeffrey Jonas via vcf-midatlantic wrote:
Long long ago, I ran Whitesmiths' "C" compiler under CP/M on a Z80 system but forgot what data types were "native". I also have PL/1 for CP/M.
While "native" data types are definitely faster (word-sized integers), even the Z80 had math co-processors. Before it was on-die, there was a variety of 8087 math co-processors by Cyrix, AMD as well as Intel. So speed and precision were far from "standardized".
I recall there were standards, a lot of them. There were several floating point standards (even within the IEEE standards). Many seem to have grown from the fact that smaller systems grew into larger ones. Even today this continues. I know that there is a Big Numbers library (not necessarily a standard) for handling really big numbers. Back to retro, my Atari BASIC supports floating point. The floating point package maintains numbers internally as 6-byte quantities: a 5-byte (10 BCD digit) mantissa with a 1-byte exponent. I thought it had an IEEE standard but I can't find anything on it at the moment. Also I recall AMD having a few FPU (AMD9511). I always wondered how much that might have helped a processor like the 6502. Some more info on the 8231, 9511 and 9512 FPUs: http://www.cpushack.com/2010/09/23/arithmetic-processors-then-and-now/ -- Linux Home Automation Neil Cherry ncherry@linuxha.com http://www.linuxha.com/ Main site http://linuxha.blogspot.com/ My HA Blog Author of: Linux Smart Homes For Dummies