And the 1620 was a 2 decimal digit exponent with a 2 to 98 digit mantissa. IIRC, you could do math on two numbers with different length mantissas. You could watch a division with a long mantissa crank through.
integer multiplication/division on numbers up to almost 10,000 decimal digits, and addition/subtraction on two numbers up to almost half of total memory (max of just under 30,000 decimal digits each). <pre>--Carey</pre> > On 05/03/2024 7:48 PM CDT Paul Koning via cctalk <cctalk@classiccmp.org> > wrote: > > > > On May 3, 2024, at 5:31 PM, Sean Conner via cctalk <cctalk@classiccmp.org> > > wrote: > > > > It was thus said that the Great Steve Lewis via cctalk once stated: > >> Great discussions about BASIC. I talked about the IBM 5110 flavor of > >> BASIC last year (such as its FORM keyboard for quickly making structured > >> input forms), and recently "re-learned" that it defaults to running with > >> double-precision. But if you use "RUNS" instead of "RUN" then the same > >> code is run using single-precision (but I haven't verified yet if that > >> translates into an actual runtime speed difference). I think most of the > >> "street BASICs" used single precision (if they supported floats at all). > >> But speaking of Microsoft BASIC, I think Monte Davidoff is still around > >> and deserves a lot of credit for doing the floating point library in the > >> initial Microsoft BASIC (but it's a bit sad that history has lost the names > >> of individual contributors > > > > I think most of the "street BASICs" were written before IEEE-754 (floating > > point standard) was ratified (1985 if I recall). Microsoft's floating point > > [1] was five bytes long---four bytes for the mantissa, and one byte for the > > exponent, biased by 129. I did some tests a month ago whereby I tested the > > speed of the Microsoft floating point math on the 6809 (using Color Computer > > BASIC) vs. the Motorola 6839 (floating point ROM implementing IEEE-754), and > > the Microsoft version was faster [2]. > > BASIC-PLUS (part of RSTS) had a weird floating point history. The original > version, through RSTS V3, used 3-word floating point: two words mantissa, one > word exponent. Then, presumably to match the 11/45 FPU, in version 4A they > switched to your choice of 2 or 4 word float, what later in the VAX era came > to be called "F" and "D" float. > > One curious thing about floating point formats of earlier computers is that > they came with wrinkles not seen either in IEEE nor in DEC float. As I > recall, the 360 is really hex float, not binary, with an exponent that gives > a power of 16. CDC 6600 series mainframes used a floating point format where > the mantissa is an integer, not a fraction, and negation is done by > complementing the entire word. > > The Electrologica X8 is yet another variation, which apparently came from an > academic paper of the era: it treats the mantissa as an integer too, like the > CDC 6600, but with a different normalizationn rule. THe 6600 does it like > most others: shift left until all leading zeroes have been eliminated. (It > doesn't have a "hidden bit" as DEC did.) But in the EL-X8, the normalization > rule is to make the exponent as close to zero as possible without losing > bits. So an integer value is normalized to the actual integer with exponent > zero. And since there is no "excess n" bias on the exponent, the encoding of > an integer and of the identical normalized floating point value are in fact > the same. > > paul