Decimal floating-point: algorism for computers

Decimal arithmetic is the norm in human calculations, and human centric applications must use a decimal floating point arithmetic to achieve the same results. Initial benchmarks indicate that some applications spend 50% to 90% of their time in decimal processing, because software decimal arithmetic suffers a 100/spl times/ to 1000/spl times/ performance penalty over hardware. The need for decimal floating point in hardware is urgent. Existing designs, however, either fail to conform to modern standards or are incompatible with the established rules of decimal arithmetic. We introduce a new approach to decimal floating point which not only provides the strict results which are necessary for commercial applications but also meets the constraints and requirements of the IEEE 854 standard. A hardware implementation of this arithmetic is in development, and it is expected that this will significantly accelerate a wide variety of applications.

[1]  Wilfried Buchholz Fingers or fists? (the choice of decimal or binary representation) , 1959, CACM.

[2]  William Kahan,et al.  A Proposed Radix- and Word-length-independent Standard for Floating-point Arithmetic , 1984, IEEE Micro.

[3]  Martin H. Weik A SECOND SURVEY OF DOMESTIC ELECTRONIC DIGITAL COMPUTING SYSTEMS.. , 1957 .

[4]  M. Bataille,et al.  Something old: the Gamma 60 the computer that was ahead of its time , 1972, CARN.

[5]  T. E. Hull Desirable floating-point arithmetic and elementary functions for numerical computation , 1978, 1978 IEEE 4th Symposium onomputer Arithmetic (ARITH).

[6]  B. P. Day,et al.  Experimental computer for schools , 1970 .

[7]  Eric M. Schwarz,et al.  A decimal floating-point specification , 2001, Proceedings 15th IEEE Symposium on Computer Arithmetic. ARITH-15 2001.

[8]  Frederick E. Petry,et al.  Decimal shifting for an exact floating point representation , 1980 .

[9]  Thomas E. Hull,et al.  CADAC: A Controlled-Precision Decimal Arithmetic Unit , 1983, IEEE Transactions on Computers.

[10]  R. Sacks-Davis,et al.  Applications of Redundant Number Representations to Decimal Arithmetic , 1982, Comput. J..

[11]  Herman H. Goldstine,et al.  The Electronic Numerical Integrator and Computer (ENIAC) , 1996, IEEE Ann. Hist. Comput..

[12]  Herman H. Goldstine,et al.  Preliminary discussion of the logical design of an electronic computing instrument (1946) , 1989 .

[13]  Peter M. Neely On conventions for systems of numerical representation , 1972, ACM '72.

[14]  Peter M. Fenwick,et al.  A Binary Representation for Decimal Numbers , 1972, Aust. Comput. J..

[15]  Roy A. Keir,et al.  Compatible number representations , 1975, 1975 IEEE 3rd Symposium on Computer Arithmetic (ARITH).

[16]  Robert Perkins EASIAC, A Pseudo-Computer , 1956, JACM.

[17]  Ansi Ieee,et al.  IEEE Standard for Binary Floating Point Arithmetic , 1985 .

[18]  Frederic N. Ris,et al.  A unified decimal floating-point architecture for the support of high-level languages , 1976, SGNM.

[19]  Tien Chi Chen,et al.  Storage-efficient representation of decimal data , 1975, CACM.

[20]  Thomas E. Hull,et al.  Toward an ideal computer arithmetic , 1987, 1987 IEEE 8th Symposium on Computer Arithmetic (ARITH).

[21]  M. H. Weik,et al.  A Third Survey of Domestic Electronic Digital Computing Systems, Report No. 1115 , 1961 .

[22]  Michael F. Cowlishaw The design of the REXX language , 1987, SIGP.

[23]  Peter H. Golde,et al.  C# Language Specification , 2003 .

[24]  David G. Hough,et al.  A Proposed Radix- and Word-length-independent Standard for Floating-point Arithmetic , 1984, IEEE Micro.