Talk:Pathological floating point problems: Difference between revisions

From Rosetta Code
Content added Content deleted
m (added whitespace.)
Line 24: Line 24:
-----
-----
</b>
</b>

:After some head-scratching I found https://www.mirrorservice.org/sites/www.bitsavers.org/pdf/ibm/1620/ which had a link to https://www.mirrorservice.org/sites/www.bitsavers.org/pdf/ibm/1620/C26-5876-2_FORTRAN_II_Mar65.pdf wherein after reading to page 24 (damn .pdf is image-only: no searchable text) I found the heading '''Source Program Control Card''' which is to precede the Fortran source, in the form <code>*ffkks</code> where ''ff'' is the size of the floating-point mantissa (2 to 28), ''kk'' the size of integers (2 to 10) and ''s'' is the memory size of 2, 4, 6 for 20,000 to 60,000 digits if it is to be not that of the current computer.

:I don't recall ever using this facility, as my major program at Auckland University for the 1620 was to write a simulator for the AMI computer (simulated on the IBM 1130) that had been used for teaching a first year course in applied mathematics in AMI machine code, leading to the calculation of functions and Chebyshev adjustment of those calculations. I have always wondered how the 1620 handled such functions (sine, cosine, etc) given different precisions, as there was no sign of different decks of cards for the subroutine library for different precisions, and the use of Chebyshev polynomials to "economise" the precision of a particular calculation via a power series depended very much on what precision was being employed and pursued. Perhaps, just slog through additional terms until they become small enough rather than a pre-determined sufficient number of terms. [[User:Dinosaur|Dinosaur]] ([[User talk:Dinosaur|talk]]) 03:31, 30 April 2017 (UTC)

Revision as of 03:35, 30 April 2017

mention of the IBM 1620 in the FORTRAN entry

The   IBM 1620   (a decimal computer) can support integer arithmetic up to the size of the machine;   it came in twenty, forty, or sixty thousand decimal digits   (a digit consisted of six bits:

 a check bit     (nowadays, this would be called a parity bit)
 a flag bit      (for negative numbers, indirect addressing, end of field) 
 4 numeric bits  (a decimal digit, or one-half of a character)

The   IBM 1620 model I   had tables for addition and multiply   (stored in low memory),   so it shouldn't be overlaid if one expects to perform integer arithmetic.   However, modifying these tables enabled arithmetic in other bases (up to base ten).

My first exposure to a computer was during a tour of the computer room (1965), the teacher entered (typed) a machine-language program into the computer memory (via the typewriter), and the computer program raised   999   to the   999th  power,   and it typed   2,997   decimal digits.


There were no control cards for any model of the IBM 1620.


The   IBM 1620 model II   removed the need to store those tables in low memory.


For the (optional) floating point feature, the maximum mantissa size was 99 decimal digits, and the exponent was fixed at two decimal digits.

-- Gerard Schildberger (talk) 18:00, 16 February 2017 (UTC)


After some head-scratching I found https://www.mirrorservice.org/sites/www.bitsavers.org/pdf/ibm/1620/ which had a link to https://www.mirrorservice.org/sites/www.bitsavers.org/pdf/ibm/1620/C26-5876-2_FORTRAN_II_Mar65.pdf wherein after reading to page 24 (damn .pdf is image-only: no searchable text) I found the heading Source Program Control Card which is to precede the Fortran source, in the form *ffkks where ff is the size of the floating-point mantissa (2 to 28), kk the size of integers (2 to 10) and s is the memory size of 2, 4, 6 for 20,000 to 60,000 digits if it is to be not that of the current computer.
I don't recall ever using this facility, as my major program at Auckland University for the 1620 was to write a simulator for the AMI computer (simulated on the IBM 1130) that had been used for teaching a first year course in applied mathematics in AMI machine code, leading to the calculation of functions and Chebyshev adjustment of those calculations. I have always wondered how the 1620 handled such functions (sine, cosine, etc) given different precisions, as there was no sign of different decks of cards for the subroutine library for different precisions, and the use of Chebyshev polynomials to "economise" the precision of a particular calculation via a power series depended very much on what precision was being employed and pursued. Perhaps, just slog through additional terms until they become small enough rather than a pre-determined sufficient number of terms. Dinosaur (talk) 03:31, 30 April 2017 (UTC)