| Bibliography of material on Decimal Arithmetic |
|
This collection of references forms a bibliography of Decimal Arithmetic, with the emphasis on computer implementations of arithmetic.
For general background on why decimal arithmetic is important, a decimal FAQ, decimal arithmetic specifications and testcases, and other World Wide Web links, please see the General Decimal Arithmetic pages.
This list is sorted by year of publication. (a categorized collection and an alphabetic list by author are also available).
For books, and papers with no formal abstract, the Abstract material is quoted from an introductory section or (occasionally, for books only) back cover matter. Omitted material is indicated by ellipses (...).
Please send any comments, corrections, or additions to Mike Cowlishaw, mfc@uk.ibm.com.
|
karpin1925
¿Web? |
The History of Arithmetic,
Louis Charles Karpinski,
200pp,
Rand McNally & Company,
1925.
Abstract: The purpose of this book is to present the development of arithmetic as a vital and integral part of the history of civilization. Particular attention is paid to the material of arithmetic which continues to be taught in our elementary schools and to the historical phases of that work with which the teacher of arithmetic should be familiar... Note: Reprint: Russell & Russell, New York, 1965. |
|
burks1946
¿Web? |
Preliminary discussion of the logical design of an electronic computing instrument,
Arthur W. Burks, Herman H. Goldstine, and John von Neumann,
42pp,
Inst. for Advanced Study, Princeton, N. J.,
June 28, 1946.
Abstract: Inasmuch as the completed device will be a general-purpose computing machine it should contain certain main organs relating to arithmetic, memory-storage, control and connection with the human operator. It is intended that the machine be fully automatic in character, i.e. independent of the human operator after the computation starts... Note: Reprinted in von Neumann’s Collected Works, Vol. 5, A. H. Taub, Ed. (Pergamon, London, 1963), pp 34-79, and also in Computer Structures: Reading and Examples, Bell & Newell, McGraw-Hill Inc., 1971. Now widely available on the Internet. Contract W-36-034-ORD-H81. R&D Service, Ordnance Department, US Army and Institute for Advanced Study, Princeton |
|
golds1946
¿Web? |
The Electronic Numerical Integrator and Computer (ENIAC),
H. H. Goldstine and Adele Goldstine,
IEEE Annals of the History of Computing, Vol. 18 #1,
pp10–16,
IEEE,
1996.
Abstract: It is our purpose in the succeeding pages to give a brief description of the ENIAC and an indication of the kinds of problems for which it can be used. This general purpose electronic computing machine was recently made public by the Army Ordnance Department for which it was developed by the Moore School of Electrical Engineering. The machine was developed primarily for the purpose of calculating firing tablcs for the armed forces. Its design is, however, sufficiently general to permit the solution of a large class of numerical problems which could hardly be attempted by more conventional computing tools. In order easily to obtain sufficient accuracy for scientific computations, the ENIAC was designed as a digital device. The equipment normally handles signed 10-digit numbers expressed in the decimal system. It is, however, so constructed that operations with as many as 20 digits are possible. The machine is automatically sequenced in the sense that all instructions needed to carry out a computation are given to it before the computation commences. It will be seen below how these instructions are given to the machine. Note: Reprinted from Mathematical Tables and Other Aids to Computation, 1946. |
|
davis1952
¿Web? |
Automatic Recognition of Spoken Digits,
K. Davis, R. Biddulph, and S. Balashek,
Journal of the Acoustical Society of America, Vol. 24 (Possibly: American Journal of Otolaryngology, Vol. 24.),
pp637–642,
ASA,
November 1952.
Abstract: The recognizer discussed will automatically recognize telephone-quality digits spoken at normal speech rates by a single individual, with an accuracy varying between 97 and 99 percent. After some preliminary analysis of the speech of any individual, the circuit can be adjusted to deliver a similar accuracy on the speech of that individual. The circuit is not, however, in its present configuration, capable of performing equally well on the speech of a series of talkers without recourse to such adjustment. Circuitry involves division of the speech spectrum into two frequency bands, one below and the other above 900 cps. Axis-crossing counts are then individually made of both band energies to determine the frequency of the maximum syllabic rate energy within each band. Simultaneous two-dimensional frequency portrayal is found to possess recognition significance. Standards are then determined, one for each digit of the ten-digit series, and are built into the recognizer as a form of elemental memory. By means of a series of calculations performed automatically on the spoken input digit, a best match type comparison is made with each of the ten standard digit patterns and the digit of best match selected. |
|
bashe1954
¿Web? |
The IBM Type 702, An Electronic Data Processing Machine for Business,
C. J. Bashe, W. Buchholz, and N. Rochester,
Journal of the ACM (JACM), Vol. 1 #4,
pp149–169,
ACM Press,
October 1954.
Abstract: The main features of the IBM Electronic Data Processing Machine, Type 702, are discussed from the programmer’s point of view to illustrate how it was designed specifically to solve large accounting and statistical problems in business, industry, and government. The 702 exploits in one integrated system the high speed and storage capacity of magnetic tape, the accessibility of electrostatic memory supplemented by large auxiliary storage on magnetic drums, the flexibility of punched-card document input, the page printing output of modern accounting machines, and the technology of general-purpose, stored-program, electronic computers. The 702 is a serial machine with decimal arithmetic. Its serial nature provides several unusual logical features of great aid in programming accounting problems. |
|
hamilton1954
¿Web? |
The IBM Magnetic Drum Calculator Type 650,
F. E. Hamilton and E. C. Kubie,
Journal of the ACM, Vol. 1 #1,
pp13–20,
ACM Press,
January 1954.
Abstract: The IBM Magnetic Drum Calculator Type 650 is an electronic calculator intermediate in speed, capacity and cost. It takes a logical position between the IBM Card Programmed Electronic Calculator and the IBM Electronic Data Processing Machines Type 701. It is a more powerful computing tool as required by those who have “outgrown” the Card Programmed Electronic Calculator. It is also a machine which may be used economically by those who are not as yet ready for a large scale computer such as the 701. It will serve not only to perform their required computing tasks, but it will also result in gaining valuable experience for later use of large scale equipment. The Magnetic Drum Calculator, through its stored program control, comprehensive order list, punched card input-output, self-checking and moderate memory capacity, gains the flexibility required of a computer which is to serve in both the commercial and scientific computing fields... |
|
mosh1954
¿Web? |
The Generation of Pseudo-Random Numbers on a Decimal Calculator,
Jack Moshman,
Journal of the ACM Vol. 1 #2,
pp88–91,
ACM Press,
April 1954.
Abstract: (None.) Describes the generation of pseudo-random numbers on the decimal UNIVAC machine. |
|
rich1955
¿Web? |
Arithmetic Operations in Digital Computers,
R. K. Richards,
ISBN (none),
397pp,
D. Van Nostrand Co., NY,
1955.
Abstract: Among the first things that are learned in a study of mathematics are rules and procedures for performing basic arithmetic operations, notably addition, subtraction, multiplication, and division. The rules and procedures taught in school are, for the most part, aimed at making the operations as simple and speedy as possible when a pencil and a piece of paper are the only tools. In the design of more elaborate arithmetical tools, it is usually found necessary or at least highly desirable to devise new methods for executing the various arithmetic operations. ... Note: Library of Congress No. 55-6234. Bibliography 9pp. |
|
perk1956
¿Web? |
EASIAC, A Pseudo-Computer,
Robert Perkins,
Journal of the ACM, Vol. 3 #2,
pp65–72,
ACM Press,
April 1956.
Abstract: One of the primary functions of the MIDAC installation at the University of Michigan is the instruction of beginners in the various aspects of digital machine use including programming and coding. ... In conducting these courses it was soon found to be extremely difficult, in five or six instruction periods, to bring a complete newcomer up to the point where he can code and check out on MIDAC anything more than a rather trivial routine. As might be expected the difficulty centers around problems of scaling, instruction modification and binary representation. ... To alleviate these problems it was decided that a new computer was needed: one designed to make programming easier. At the cost of some of MIDAC’s speed and capacity plus two or three man-months of programming time EASIAC, the EASy Instruction Automatic Computer, was realized as a translation- interpretation program in MIDAC. |
|
couleur1958
¿Web? |
BIDEC – A Binary-to-Decimal or Decimal-to-Binary Converter,
J. F. Couleur,
IRE Transactions on Electronic Computers, Vol. EC-7,
pp313–316,
IRE,
1958.
Abstract: Simple, high-speed devices to convert binary, binary coded octal, or Gray code numbers to binary coded decimal numbers or vice versa is described. Circuitry required is four shift register stages per decimal digit plus one 30-diode network per decimal digit. In simple form the conversion requires two operations per binary bit but is theoretically capable of working at one operation per bit. |
|
delury1958
¿Web? |
Computation with Approximate Numbers,
Daniel B. Delury,
The Mathematics Teacher 51,
pp521–530,
November 1958.
Abstract: There is room, I think, for the view that it is improper to speak at all of “approximate numbers”... Note: Reprinted with permission of the Canadian School. |
|
kautz1958
¿Web? |
Binary and truth-function operations on a decimal computer with an extract command,
William H. Kautz,
Communications of the ACM, Vol. 1 #5,
pp12–13,
ACM Press,
May 1958.
Abstract: It occasionally becomes desirable to solve, on automatic digital computing machines which are capable of handling only decimal numbers, problems in logic, class structure, coding, binary relations or binary arithmetic. This note describes how the major logical and binary operations can be carried out on one such machine, the DATATRON 205, without any circuit modifications to the computer. These procedures would be applicable with little modification to any decimal computer with an extract command, however. |
|
mennin1958
¿Web? |
Number Words and Number Symbols: A Cultural History of Numbers,
Karl Menninger,
ISBN 0-486-27096-3,
480pp,
Dover Publications, Inc.,
1992.
Abstract: This book is ... a multifacted linguistic and historical analysis of how numbers have developed and evolved in many different cultures. “... especially good on early counting and calculating devices ...”. Note: First published in English by the MIT Press, 1969. Translated from the German by Paul Broneer. |
|
siss1958
¿Web? |
An Improved Decimal Redundancy Check,
Roger L. Sisson,
Communications of the ACM, Vol. 1 #5,
pp10–12,
ACM Press,
May 1958.
Abstract: As more emphasis is placed on improving the accuracy of data fed into automatic computing systems, more emphasis will be placed on redundancy checking of predicable fields within the input. Two systems (at least) of checking a field of decimal digits have been proposed. In both of these it is assumed that the field to be checked is all numeric and that the redundancy must be of only one digit. |
|
ashen1959
¿Web? |
Unnormalized Floating Point Arithmetic,
R. L. Ashenhurst and N. Metropolis,
Journal of the ACM, Vol. 6 #3,
pp415–428,
ACM Press,
July 1959.
Abstract: Algorithms for floating point computer arithmetic are described, in which fractional parts are not subject to the usual normalization convention. These algorithms give results in a form which furnishes some indication of their degree of precision. An analysis of one-stage error propagation is developed for each operation; a suggested statistical model for long run error propagation is also set forth. |
|
buch1959
¿Web? |
Fingers or Fists? (The Choice of Decimal or Binary representation),
Werner Buchholz,
Communications of the ACM, Vol. 2 #12,
pp3–11,
ACM Press,
December 1959.
Abstract: The binary number system offers many advantages over a decimal representation for a high-perfornmnee, general-purpose computer. The greater simplicity of a binary arithmetic unit and the greater compactness of binary numbers both contribute directly to arithmetic speed. Less obvious and perhaps more important is the way binary addressing and instruction formats can increase the overall performance. Binary addresses are also essential to certain powerful operations which are not practical with decimal instruction formats. On the other hand, decimal numbers are essential for communicating between man and the computer. In applications requiring the processing of a large volume of inherently decimal input and output data, the time for decimal-binary conversion needed by a purely binary computer may be significant. A slower decimal adder may take less time than a fast binary adder doing an addition and two conversions. A careful review ef the significance of decimal and binary number systems led to the adoption in the IBM STRETCH computer of binary addressing and both binary and decimal data arithmetic, supplemented by efficient conversion instructions. Note: Letters to the edtor in response to this paper were published in CACM, Vol. 3, #3, March 1960. |
|
dagg1959
¿Web? |
Decimal-Binary conversions in CORDIC,
D. H. Daggett,
IRE Transactions on Electronic Computers, Vol. EC-8 #5,
pp335–339,
IRE,
September 1959.
Abstract: A special-purpose, binary computer called CORDIC (COordinate Rotation DIgital Computer) contains a unique arithmetic unit composed of three shift registers, three adder-subtractors, and suitable interconnections for efficiently performing calculations involving trigonometric functions. A technique is formulated for using the CORDIC arithmetic unit to convert between angles expressed in degrees and minutes in the 8, 4, 2, 1 code and angles expressed in binary fractions of a half revolution. Decimal-to-binary conversion is accomplished through the generation of an intermediate binary code in which the variable values are +1 and 1. Each of these intermediate code variables controls the addition or subtraction of a particular binary constant in the formation of an accumulated sum which represents the angle. Examples are presented to illustrate the technique. Binary-to-decimal conversion is accomplished by applying essentially the same conversion steps in reverse order, but this feature is not discussed fully. Fundamental principles of the conversion technique, rather than details of implementation, are emphasized. The CORDIC conversion technique is sufficiently general to be applied to decimal-binary conversion problems involving other mixed radix systems and other decimal codes. |
|
tarant1959
¿Web? |
Binary conversion, with fixed decimal precision, of a decimal fraction,
Donald Taranto,
Communications of the ACM, Vol. 2 #7,
pp27–27,
ACM Press,
July 1959.
Abstract: Given a decimal fraction f find a binary approximation fb to f, with a given decimal precision h. |
|
wolontis1959
URL ¿Web? |
A Complete Floating-Decimal Interpretive System for the IBM 650 Magnetic Drum Calculator,
V. M. Wolontis,
IBM Reference Manual, Floating-Decimal Interpretive System for the IBM 650,
87pp,
IBM,
1959.
Abstract: This report describes an interpretive system which transforms the 650 into a three-address, floating-decimal, general-purpose computer, primarily suited for scientific and engineering calculations. The system is complete in the sense that all mathematical, logical, and input-output operations normally called for in such calculations can be performed within the system, i.e., without reference to the basic operation codes of the 650. The guiding principles in designing the system have been ease of use, as defined in the introduction, high speed of arithmetic and frequently used logical operations and full accuracy and range for the elementary transcendental functions... Note: This document and the earlier Bell Telephone Laboratories report are available at http://www.bitsavers.org/pdf/ibm/650 |
|
wadey1960
¿Web? |
Floating-Point Arithmetics,
W. G. Wadey,
Journal of the ACM, Vol. 7 #2,
pp129–139,
ACM Press,
April 1960.
Abstract: Three types of floating-point arithmetics with error control are discussed and compared with conventional floating-point arithmetic. General multiplication and division shift criteria are derived (for any base) for Metropolis-style arithmetics. The limitations and most suitable range of application for each arithmetic are discussed. |
|
weik1961
URL ¿Web? |
A Third Survey of Domestic Electronic Digital Computing Systems, Report No. 1115,
Martin H. Weik,
1131pp,
Ballistic Research Laboratories, Aberdeen Proving Ground, Maryland,
March 1961.
Abstract: Based on the results of a third survey, the engineering and programming characteristics of two hundred twenty-two different electronic digital computing systems are given. The data are presented from the point of view of application, numerical and arithmetic characteristics, input, output and storage systems, construction and checking features, power, space, weight, and site preparation and personnel requirements, production records, cost and rental rates, sale and lease policy, reliability, operating experience, and time availability, engineering modifications and improvements and other related topics. An analysis of the survey data, fifteen comparative tables, a discussion of trends, a revised bibliography, and a complete glossary of computer engineering and programming terminology are included. |
|
grau1962
¿Web? |
On a Floating-Point Number Representation For Use with Algorithmic Languages,
A. A. Grau,
Communications of the ACM, Vol. 5 #3,
pp160–161,
ACM Press,
March 1962.
Abstract: Algorithmic languages, such as ALGOL, make provision for two types of numbers, real and integer, which are usually implemented on the computer by means of floating-point and fixed-point numbers respectively. The concepts real and integer, however, are taken from mathematics, where the set of integers forms a proper subset of the set of real numbers. In implementation a real problem is posed by the fact that the set of fixed-point numbers is not a proper subset of the set of floating-point numbers; this problem becomes very apparent in attempts to implement ALGOL 60. Furthermore, the one mathematical operation of addition is implemented in the machine by one of two machine operations, fixed-point addition or floating-point addition. ... |
|
jones1962
¿Web? |
Floating Point Feature On The IBM Type 1620,
F. B. Jones and A. W. Wymore,
IBM Technical Disclosure Bulletin, 05-62,
pp43–46,
IBM,
May 1962.
Abstract: In the type 1620 automatic floating point operations, a floating point number is a field consisting of a variable length mantissa and a two digit exponent. The exponent is in the two low order positions of the field, and the mantissa is in the remaining high order positions, |M.....M|EE. The most significant digit positions are marked by flags and the algebraic signs are marked by flags over the least significant digit positions. The exponent is established on the premise that the mantissa is less than 1.0 and equal to or greater than 0.1, and has a range of -99 to +99. The smallest positive quantity that can be represented is thus 00.... 099. The mantissa may have from two to one hundred digits. ... |
|
lake1962
¿Web? |
Hardware Conversion of Decimal and Binary Numbers, G. T. Lake, Communications of the ACM, Vol.5 #9, pp468–469, ACM Press, September 1962. |
|
lynch1962
¿Web? |
On a Wired-In Binary-to-Decimal Conversion Scheme, W. C. Lynch, Communications of the ACM, Vol. 5 #3, pp159–159, ACM Press, March 1962. |
|
allard1963
¿Web? |
Mixed Congruential Random Number Generators for Decimal Machines,
J. L. Allard, A. R. Dobell, and T. E. Hull,
Journal of the ACM, Vol. 10 #2,
pp131–141,
ACM Press,
April 1963.
Abstract: Random number generators of the mixed eongruential type have recently been proposed. They appear to have some advantages over those of the multiplicative congruential type, but they have not been thoroughly tested. This paper summarizes the results of extensive testing of these generators which has been carried out on a decimal machine. Most results are for word length 10, and special attention is given to simple multipliers which give fast generators. But other word lengths and many other multipliers are considered. A variety of additive constants is also used. It turns out that these mixed generators, in contrast to the multiplicative ones, are not consistently good from a statistical point of view. The cases which are bad seem to belong to a well-defined class which, unfor unfortunately, includes most of the generators associated with the simple multipliers. However, a surprise result is that all generators associated with one of the simplest and fastest multipliers, namely 101, turn out to be consistently good for word lengths greater than seven digits. A final section of the paper suggests a simple theoretical explanation of these experimental results. |
|
burro1964
¿Web? |
Burroughs B5500 Information Processing Systems Reference Manual,
Burroughs Corporation,
224pp,
Burroughs Corporation, Detroit, Michigan,
1964.
Abstract: This reference manual describes the hardware characteristics of the Burroughs B 5500 Information Processing System by presenting detailed information concerning the functional operation of the entire system. The B 5500 is a large-scale, high-speed, solid-state computer which represents a departure from the conventional computer system concept. It is a problem language oriented system rather than the conventional hardware oriented system. Because of the design concept of the B 5500, there exists a strong interdependence between the hardware and the Master Control Program which directs the system. The material presented herein pertains only to the hardware considerations, whereas the Master Control Program is discussed under separate cover. |
|
kanner1965
¿Web? |
Number Base Conversion in a Significant Digit Arithmetic,
Herbert Kanner,
Journal of the ACM, Vol. 12 #2,
ISSN 0004-5411,
pp242–246,
ACM Press,
April 1965.
Abstract: An algorithm is presented for the conversion in either direction between binary and decimal floating-point representations, retaining proper significance through the conversion in an unnormalized significant digit arithmetic. |
|
mano1965
¿Web? |
Pracniques: simulation of Boolean functions in a decimal computer,
M. Morris Mano,
Communications of the ACM, Vol. 8 #1,
ISSN 0001-0782,
pp39–40,
ACM Press,
January 1965.
Abstract: A method is presented here for simulating logical functions in a digital computer by means of simple arithmetic and control instructions. This method is of practical value when the computer used does not have built-in logical instructions. |
|
chart1966
¿Web? |
Automatic Controlled Precision Calculations,
Bruce A. Chartres,
Journal of the ACM, Vol. 13 #3,
pp386–403,
ACM Press,
July 1966.
Abstract: Recent developments in computer design and error analysis have made feasible the use of variable precision arithmetic and the preparation of programs that automatically determine their own precision requirements. Such programs enable the user to specify the accuracy he wants, and yield answers guaranteed to lie within the bounds prescribed. A class of such programs, called “contracting error programs”, is defined in which the precision is determined by prescribing error bounds on the data. A variant of interval arithmetic is defined which enables a limited class of algorithms to be programmed as contracting error programs. A contracting error program for the solution of simultaneous linear equations is described, demonstrating the application of the idea to a wider class of problems. |
|
mancino1966
¿Web? |
Multiple precision floating-point conversion from decimal-to-binary and vice versa,
O. G. Mancino,
Communications of the ACM, Vol. 9 #5,
pp347–348,
ACM Press,
May 1966.
Abstract: Decimal-to-binary and binary-to-decimal floating-point conversion is often performed by using a table of the powers 10i (i a positive integer) for converting from base 10 to base 2, and by using a table of the coefficients of a polynomial approximation of 10x (0 ≤ x < 1) for converting from base 2 to base 10. These tables occupy a large storage region in the case of a nonsingle precision conversion. This paper shows that a single small table suffices for a floating-point conversion from decimal to binary, and vice versa, in any useful precision. |
|
gold1967
¿Web? |
27 Bits Are Not Enough for 8-Digit Accuracy,
I. Bennett Goldberg,
Communications of the ACM, Vol. 10 #2,
pp105–106,
ACM Press,
February 1967.
Abstract: From the inequality 108 < 227, we are likely to conclude that we can represent 8-digit decimal floating-point numbers accurately by 27-bit [binary] floating-point numbers. However, we need 28 significant bits to represent some 8-digit numbers accurately. In general, we can show that if 10p < 2q-1, then q significant bits are always enough for p-digit decimal accuracy. Finally, we can define a compact 27-bit floating-point representation that will give 28 significant bits, for numbers of practical importance. |
|
klerer1967
URL ¿Web? |
Chapt. 1.4 Computer Characteristics Table,
Melvin Klerer et al,
Digital Computer User's Handbook,
67pp,
McGraw-Hill, NY,
1967.
Abstract: Section I: General-purpose Solid-state Computers Manufactured in the United States and Designed for a Wide Variety of Business and Scientific Applications Section II: Systems Manufactured in the United States with General-purpose Capabilities but Used Principally in Process Control, Message Switching, and Other Specialized Applications Section III: General-purpose Computers Manufactured in Countries Other Than the United States Section IV: Vacuum-tube Computers No Longer Manufactured but Still in Use Section V: Chronological Listing of Vacuum-tube and Solid-state Computers Manufactured in the United States and Installed between 1951 and 1965 |
|
dietmeyer1968
¿Web? |
Generating prime implicants via ternary encoding and decimal arithmetic,
D. L. Dietmeyer and J. R. Duley,
Communications of the ACM, Vol. 11 #7,
ISSN 0001-0782,
pp520–523,
ACM Press,
July 1968.
Abstract: Decimal arithmetic, ternary encoding of cubes, and topological considerations are used in an algorithm to obtain the extremals and prime implicants of Boolean functions. The algorithm, which has been programmed in the FORTRAN language, generally requires less memory than other minimization procedures, and treats DON’T CARE terms in an efficient manner. |
|
matula1968
¿Web? |
In-and-out conversions,
David Matula,
Communications of the ACM, Vol. 11 #1,
pp47–60,
ACM Press,
January 1968.
Abstract: By an in-and-out conversion we mean that a floating-point number in one base is converted into a floating-point number in another base and then converted back to a floating-point number in the original base. For all combinations of rounding and truncation conversions the question is considered of how many significant digits are needed in the intermediate base to allow such in-and-out conversions to return the original number (when possible), or at least to cause a difference of no more than a unit in the least significant digit. |
|
schmid1968
¿Web? |
An electronic digital slide rule,
Hermann Schmid and David Busch,
The Electronic Engineer,
pp54–64,
July 1968.
Abstract: The Electronic Digital Slide Rule (EDSR) of the future not only will be smaller and easier to operate than the conventional slide rule, but it will also be more accurate. |
|
schmoo1968
¿Web? |
High Speed Binary to Decimal Conversion,
M. S. Schmookler,
IEEE Transactions on Computers, Vol. C-17,
pp506–508,
IEEE,
1968.
Abstract: This note describes several methods of performing fast, efficient, binary-to-decimal conversion. With a modest amount of circuitry, an order of magnitude speed improvement can is obtained. This achievement offers a unique advantage to general-purpose computers requiring special hardware to translate between binary and decimal numbering systems. |
|
brown1969
¿Web? |
The Choice of Base,
W. S. Brown and P. L. Richman,
Communications of the ACM, Vol. 12 #10,
pp560–561,
ACM Press,
October 1969.
Abstract: A digital computer is considered, whose memory words are composed of N r-state devices plus two sign bits (two state devices). The choice of base b for the internal representation of floating-point numbers on such a computer is discussed. It is shown that in a certain sense b = r is best. |
|
duke1969
¿Web? |
Decimal Floating Point Processor,
K. A. Duke,
IBM Technical Disclosure Bulletin, 11-69,
pp862–862,
IBM,
November 1969.
Abstract: A numerical processor can be built which operates on floating-point numbers where the mantissa is an integer and the characteristic represents a power of 10 by which that integer must be multiplied. Thus, decimal numbers can be represented exactly without conversion errors. Such floating point numbers are expressed as N = (-1)/S/ x 10/X/ x I where S = sign bit, X = exponent, and I = integer. |
|
rosen1969
URL ¿Web? |
Electronic Computers: A Historical Survey,
Saul Rosen,
ACM Computing Surveys (CSUR), Vol. 1 #1,
ISSN 0360-0300,
pp7–36,
ACM Press,
March 1969.
Abstract: The first large scale electronic computers were built in connection with university projects sponsored by government military and research organizations. Many established companies, as well as new companies, entered the computer field during the first generation, 1947-1959, in which the vacuum tube was almost universally used as the active component in the implementation of computer logic. The second generation was characterized by the transistorized computers that began to appear in 1959. Some of the computers built then and since are considered super computers; they attempt to go to the limit of current technology in terms of size, speed, and logical complexity. From 1965 onward, most new computers belong to a third generation, which features integrated circuit technology and multiprocessor multiprogramming systems. |
|
svoboda1969
¿Web? |
Decimal Adder with Signed Digit Arithmetic,
Antonin Svoboda,
IEEE Transactions on Computers, Vol. 18 #3,
pp212–215,
IEEE,
March 1969.
Abstract: The decimal adder with signed digit arithmetic presented here was designed to establish the following facts: the redundant representation of a decimal digit xi by a 5-bit binary number Xi=3xi leads to a logical design of extreme simplicity; it is possible to form an additional algorithm for the adder so that it can be used to transform numbers written in a conventional decinal form into a signed digit form, and vice versa. |
|
kailas1970
¿Web? |
Another method of converting from hexadecimal to decimal,
M. V. Kailas,
Communications of the ACM, Vol. 13 #3,
193pp,
ACM Press,
March 1970.
Abstract: There is a simple paper-and-pencil method of converting a hexadecimal number N to decimal. |
|
matu1970
¿Web? |
A Formalization of Floating-Point Numeric Base Conversion,
David W. Matula,
IEEE Transactions on Computers, Vol. C-19 #8,
pp681–692,
IEEE,
August 1970.
Abstract: The process of converting arbitrary real numbers into a floating-point format is formalized as a mapping of the reals into a specified subset of real numbers. The structure of this subset, the set of n significant digit base b floating-point numbers, is analyzed and properties of conversion mappings are determined. For a restricted conversion mapping of the n significant digit base b numbers to the m significant-digit base d numbers, the one-to-one, onto, and order-preserving properties of the mapping are summarized. Multiple conversions consisting of a composition of individual conversion mappings are investigated and some results of the invariant points of such compound conversions are presented. The hardware and software implications of these results with regard to establishing goals and standards for floating-point formats and conversion procedures are considered. |
|
taub1970
¿Web? |
Experimental Computer for Schools,
D. M. Taub, C. E. Owen, and B. P.. Day,
Proceedings of the IEE, Vol. 117 #2,
pp303–312,
IEE,
February 1970.
Abstract: The computer is a small desk-top machine designed for teaching schoolchildren how computers work. It works in decimal notation and has a powerful instruction set which includes 3-address floating-point instructions implemented as ‘extracode’ subroutines. Addressing can be absolute, relative or indirect. For input it uses a capacitive touch keyboad, and for output and display a perfectly normal TV receiver is used. Another input/output device is an ordinary domestic tape recorder, used mainly for long term storage of programs. To make the operation of the machine easy to follow, it can be made to stop at certain stages in the processing of an instruction and automaticaly display the contents of all registers and storage locations relevant at that time. The paper gives a description of the machine and a discussion of the factors that hav influenced its design. |
|
bata1971
¿Web? |
The Gamma 60: The computer that was ahead of its time,
M. Bataille,
Honeywell Computer Journal Vol. 5 #3,
pp99–105,
Honeywell,
1971.
Abstract: Prior to 1960 the Compagnie des Machines Bull (now Honeywell Bull) delivered the first large computer system with an architecture designed for multiprogramming. Many unique features of the Gamma 60 were forerunners of present system architecture concepts. This article revisits these concepts. |
|
chen1971
URL ¿Web? |
Decimal Number Compression,
Tien Chi Chen,
Internal IBM memo to Dr. Irving T. Ho,
4pp,
IBM,
29 March 1971.
Abstract: The fact that four bits can represent 16 different states, but a decimal digit exploits only 10 of then (0-9) has been a valid criticism against decimal arithmetic. On the other hand, it is well known that a number with several decimal digits can be reexpressed into binary, leading to a 20% gain in the number of bits used. Examples are, two decimal digits (8 bits) reexpressed as a seven-bit number and three decimal digits (twelve bits) reexpressed as a ten-bit number. ... Note: Available at: http://www2.hursley.ibm.com/decimal/chen1971-memo-to-Ho.pdf |
|
schmoo1971
¿Web? |
High speed decimal addition,
Martin S. Schmookler and Arnold Weinberger,
IEEE Transactions on Computers, Vol. C-20 #8,
pp862–867,
IEEE,
August 1971.
Abstract: Parallel decimal arithmetic capability is becoming increasingly attractive with new applications of computers in a multiprogramming environment. The direct production of decimal sums offers a significant improvement in addition over methods requiring decimal correction. These techniques are illustrated in the eight-digit adder which appears in the System/360 Model 195. |
|
fenw1972
¿Web? |
A Binary Representation for Decimal Numbers,
Peter M. Fenwick,
Australian Computer Journal, Vol. 4 #4 (now Journal of Research and Practice in Information Technology),
pp146–149,
Australian Computer Society Inc.,
November 1972.
Abstract: A number system is described which combines the programming convenience of decimal numbers with the hardware advantages of binary arithmetic. The number format resembles some integer floating-point formats, except that the exponent is associated with a base of 10, rather than some power of 2. It is shown that arithmetic in the new representation is little more difficult than for ordinary floating-point numbers, and methods are given for implementing the “decimal” shifts which are a consequence of the exponent base. |
|
frankl1972
¿Web? |
Zoned Decimal Arithmetic,
J. W. Franklin,
IBM Technical Disclosure Bulletin, 12-72,
pp2123–2124,
IBM,
December 1972.
Abstract: A means is described for performing arithmetic on zoned decimal data that does not require additional storage space for the intermediate result, and which preserves both operands until it is determined that the operation has been performed correctly and successfully. |
|
neely1972
¿Web? |
On conventions for systems of numerical representation,
Peter M. Neely,
Proceedings of the ACM annual conference, Boston, Massachusetts,
pp644–651,
ACM Press,
1972.
Abstract: Present conventions for numeric representation are considered inadequate to serve the needs of applied computing. Thus an augmented digital number system is proposed for use in programming languages and in digital computers. Special symbols are proposed for numbers too large, too small or too close to zero to be represented in the normal digital number system, or which are undefined. Properties of mappings among and between digital number systems are used to justify the augments chosen. Finally a suggestion is made for a new floating point word format that will serve all the above needs and will greatly extend the exponent range of floating point numbers. |
|
brent1973
¿Web? |
On the Precision Attainable with Various Floating-point Number Systems,
Richard P. Brent,
IEEE Transactions on Computers, Vol. C-22 #6,
pp601–607,
IEEE,
June 1973.
Abstract: For scientific computations on a digital computer the set of real numbers is usually approximated by a finite set F of “floating-point” numbers. We compare the numerical accuracy possible with difference choices of F having approximately the same range and requiring the same word length. In particular, we compare different choices of base (or radix) in the usual floating-point systems. The emphasis is on the choice of F, not on the details of the number representation or the arithmetic, but both rounded and truncated arithmetic are considered. Theoretical results are given, and some simulations of typical floating-point computations (forming sums, solving systems of linear equations, finding eigenvalues) are described. If the leading fraction bit of a normalized base 2 number is not stored explicitly (saving a bit), and the criterion is to minimize the mean square roundoff error, then base 2 is best. If unnormalized numbers are allowed, so the first bit must be stored explicitly, then base 4 (or sometimes base 8) is the best of the usual systems. |
|
jacob1973
¿Web? |
A Combinatoric Division Algorithm for Fixed-Integer Divisors,
David H. Jacobsohn,
IEEE Transactions on Computers, Vol. C-22 #6,
pp608–610,
IEEE,
June 1973.
Abstract: A procedure is presented for performing a combinatoric fixed-integer division that satisfies the division algorithm in regard to both quotient and remainder. In this procedure, division is performed by multiplying the dividend by the reciprocal of the divisor. The reciprocal is, in all nontrivial cases, of necessity a repeating binary fraction, and two treatments for finding the product of an integer and repeating binary fraction are developed. Two examples of the application of the procedure are given. |
|
rich1973
¿Web? |
Variable-Precision Exponentiation,
P. L. Richman,
Communications of the ACM, Vol. 16 #1,
pp38–40,
ACM Press,
January 1973.
Abstract: A previous paper presented an efficient algorithm, called the Recomputation Algorithm, for evaluating a rational expression to within any desired tolerance on a computer which performs variable-precision aritbmetic operations. The Recomputation Algorithm can be applied to expressions involving any variable-precision operations having O(10p + S | eii |) error bounds, where p denotes the operation’s precision and ei denotes the error in the operation’s ith argument. This paper presents an efficient variable-precision exponential operation with an error bound of the above order. Other operations, such as log, sin, and cos, which have simple series expansions, can be handled similarly. |
|
agrawal1974
¿Web? |
Fast B. C. D. Multiplier,
Dharma P. Agrawal,
Electronics Letters, Vol. 10 #12,
pp237–238,
IEE,
13 June 1974.
Abstract: A fast b.c.d multiplier is proposed, based on obtaining the product of a 1-digit multiplicand and a 1-digit multiplier in a single row of adders. For high-speed operation, the carry-save technique, universally adopted for binary multipliers, is used. |
|
brown1974a
¿Web? |
Some error correcting codes for certain transposition and transcription errors in decimal integers,
D. A. H. Brown,
The Computer Journal, Vol. 17 #1,
pp9–12,
OUP,
February 1974.
Abstract: The standard theory of modulus 11 cyclic block error-correcting codes is applied to numbers expressed in the decimal system. An algorithm for error correction is given. |
|
brown1974b
¿Web? |
Biquinary decimal error detection codes with one, two and three check digits,
D. A. H. Brown,
The Computer Journal, Vol. 17 #3,
pp201–204,
OUP,
August 1974.
Abstract: The biquinary system of representing the decimal integers 0 to 9 is combined with polynomial coding to produce true decimal codes having any required number of check digits added to an integer of any length. |
|
schmid1974
¿Web? |
Decimal Computation,
Hermann Schmid,
ISBN 047176180X,
266pp,
Wiley,
1974.
Abstract: This book is thus a collection, a catalog, and a review of BCD computation techniques. The book describes how each of the most common arithmetic and transcendental operations can be implemented in a variety of ways. ... covers ... A review of number systems, BCD codes, of early calculating instruments and electronic calculating machines ... An outline of BCD computing circuit applications in the automotive, consumer, education, and entertainment fields, illustrated with some specific examples ... Mathematical developments of the algorithms ... Discussions and comparisons of circuit complexity and performance (accuracy, resolution, and speed of operation) for the different algorithms ... Note: Reprinted 1983, ISBN 0-89874-318-4, Robert E. Krieger Publishing Co. |
|
chen1975
¿Web? |
Storage-Efficient Representation of Decimal Data,
Tien Chi Chen and Irving T. Ho,
CACM Vol. 18 #2,
pp49–52,
ACM Press,
January 1975.
Abstract: Usually n decimal digits are represented by 4n bits in computers. Actually, two BCD digits can be compressed optimally and reversibly into 7 bits, and three digits into 10 bits, by a very simple algorithm based on the fixed-length combination of two variable field-length encodings. In over half of the cases the compressed code results from the conventional BCD code by simple removal of redundant 0 bits. A long decimal message can be subdivided into three-digit blocks, and separately compressed; the result differs from the asymptotic minimum length by only 0.34 percent. The hardware requirement is small, and the mappings can be done manually. |
|
hunter1975
¿Web? |
A quantitative measure of precision,
G. Hunter,
The Computer Journal, Volume 18, Issue 3,
pp231–233,
OUP,
August 1975.
Abstract: The precision zb of a real number is defined quantitatively in terms of the fractional error in the number, and the base of the arithmetic in which it is represented. The definition is an extension of the traditional rough measure of precision as the number of signification digits in the number. In binary arithmetic the integral part of zb is the number of binary digits required to store the number. Conversion of the precision from one base to another (such as binary/decimal) is discussed, and applied to consideration of the intrinsic precision of input/output routines and floating point arithmetic. |
|
keir1975a
¿Web? |
Programmer-controlled roundoff and the selection of a stable roundoff rule,
R. A. Keir,
Conf. Rec. 3rd Symp. Comp. Arithmetic CH1017-3C,
pp73–76,
IEEE Computer Society,
1975.
Abstract: The author suggests that every computer with floating-point addition and subtraction should have PSW controlable roundoff facilities. Yohe’s catalog should be induded. There should also be a stable roundoff mode using the round-to-off [-odd] or round-to-even rule based on whether the radix is divisible by four or only by two. |
|
keir1975b
¿Web? |
Compatible number representations,
R. A. Keir,
Conf. Rec. 3rd Symp. Comp. Arithmetic CH1017-3C,
pp82–87,
IEEE Computer Society,
1975.
Abstract: A compatible number system for mixed fixed-point and floating-point arithmetic is described in termsof number formats and opcode sequences (for hardwired or microcoded control). This inexpensive system can be as fast as fixed-point arithmetic on integers, is faster than normalized arithmetic in floating point, gets answers identical to those of normalized arithmetic, and automatically satisfies the Algol-60 mixed-mode rules. The central concept is the avoidance of meaningless “normalization” following arithmetic operations. Adoption of this system could lead to simpler compilers. |
|
keir1975c
¿Web? |
Should the stable rounding rule be radix-dependent?,
Roy A. Keir,
Information Processing Letters, Vol. 3 #6,
pp188–189,
Elsevier,
July 1975.
Abstract: (None.) |
|
senzig1975
¿Web? |
Calculator Algorithms,
Don Senzig,
IEEE Compcon Reader Digest, IEEE Catalog No. 75 CH 0920-9C,
pp139–141,
IEEE,
Spring 1975.
Abstract: This paper discusses algorithms for generating the trigonometric, exponential, and hyperbolic functions and their inverses. No invention is claimed here. The algorithm for logarithm was used by Briggs in compiling his table of logarithms in the 1600’s. Other earlier references are (cited). The development presented here is, perhaps, more direct than those given in the above references but leads to the same result. |
|
smith1975
¿Web? |
Comments on a Paper by T. C. Chen and I. T. Ho,
Alan Jay Smith,
CACM Vol. 18 #8,
pp463–463,
ACM Press,
August 1975.
Abstract: (None.) |
|
soule1975
¿Web? |
Addition in an Arbitrary Base Without Radix Conversion,
Stephen Soule,
Communications of the ACM Vol. 18 #6,
pp344–346,
ACM Press,
June 1975.
Abstract: This paper presents a generalization of an old programming technique; using it, one may add and subtract numbers represented in any radix, including a mixed radix, and stored one digit per byte in bytes of sufficient size. Radix conversion is unnecessary, no looping is required, and numbers may even be stored in a display (I/O) format. Applications to Cobol, MIX, and hexadecimal sums are discussed. |
|
ansi1976
¿Web? |
ANSI X3.53-l976: American National Standard – Programming Language PL/I,
J. F. Auwaerter,
421pp,
ANSI,
1976.
Abstract: This document defines American National Standard Programming Language PL/I and specifies both the form and interpretation of computer programs written in PL/I. The standard is intended to provide a high degree of machine independence and thereby facilitate program exchange among a variety of computing systems. The document serves as an authoritative reference rather than as a tutorial exposition. The language is defined by specifying a conceptual PL/I machine which translates and interprets intended PL/I programs. The relationship between an actual implementation of PL/I and the conceptual machine presented in this document is also given. This reference document was developed jointly under the auspices of the American National Standards Institute and the European Computer Manufacturers Association. Note: Reaffirmed 1998. |
|
brent1976
URL ¿Web? |
Fast multiple-precision evaluation of elementary functions,
Richard P. Brent,
Journal of the ACM, Vol. 23 #2,
pp242–251,
ACM Press,
April 1976.
Abstract: Let f(x) be one of the usual elementary functions (exp, log, artan, sin, cosh, etc.), and let M(n) be the number of single-precision operations required to multiply n-bit integers. It is shown that f(x) can be evaluated, with relative error O(2-n), in O(M(n)log(n)) operations, for any floating-point number x (with an n-bit fraction) in a suitable finite interval. From the Schönhage-Strassen bound on M(n), it follows that an n-bit approximation to f(x) may be evaluated in O(n(log(n))2loglog(n)) operations. Special cases include the evaluation of constants such as pi, e, and epi. The algorithms depend on the theory of elliptic integrals, using the arithmetic-geometric |
|
ris1976
¿Web? |
A Unified Decimal Floating-Point Architecture for the Support of High-Level Languages,
Frederic N. Ris,
ACM SIGNUM Newsletter, Vol. 11 #3,
pp18–23,
ACM Press,
October 1976.
Abstract: This paper summarizes a proposal for a decimal floating-point arithmetic interface for the support of high-level languages, consisting both of the arithmetic operations observed by application programs and facilities to produce subroutine libraries accessible from these programs. What is not included here are the detailed motivations, examinations of alternatives, and implementation considerations which will appear in the full work. Note: Also in ACM SIGARCH Computer Architecture News, Vol 5 #4, pp21-31, October 1976. Also in ACM SIGPLAN Notices, Vol 12 #9, pp60-70, September 1977. Also in IBM RC 6203 (#26651) 11pp, September 1976. |
|
peuto1977
¿Web? |
An instruction timing model of CPU performance,
Bernard L. Peuto and Leonard J. Shustek,
Proceedings of the 4th annual symposium on Computer architecture,
pp165–178,
ACM Press,
1977.
Abstract: A model of high-performance computers is derived from instruction timing formulas, with compensation for pipeline and cache memory effects. The model is used to predict the performance of the IBM 370/168 and the Amdahl 470 V/6 on specific programs, and the results are verified by comparison with actual performance. Data collected about program behavior is combined with the performance analysis to highlight some of the problems with high-performance implementations of such architectures. |
|
hull1978
¿Web? |
Desirable Floating-Point Arithmetic and Elementary Functions for Numerical Computation,
T. E. Hull,
ACM Signum Newsletter, Vol. 14 #1 (Proceedings of the SIGNUM Conference on the Programming Environment for Development of Numerical Software),
pp96–99,
ACM Press,
1978.
Abstract: The purpose of this talk is to summarize proposed specifications for floating-point arithmetic and elementary functions. The topics considered are: the base of the number system, precision control, number representation, arithmetic operations, other basic operations, elementary functions, and exception handling. The possibility of doing without fixed-point arithmetic is also mentioned. The specifications are intended to be entirely at the level of a programming language such as Fortran. The emphasis is on convenience and simplicity from the user’s point of view. Conforming to such specifications would have obvious beneficial implications for the portability of numerical software, and for proving programs correct, as well as attempting to provide facilities which are most suitable for the user. The specifications are not complete in every detail, but it is intended that they be complete “in spirit” – some further details, especially syntactic details, would have to be provided, but the proposals are otherwise relatively complete. Note: Also in Proceedings of the IEEE 4th Symposium on Computer Arithmetic pp63-69. |
|
liu1978
¿Web? |
Error-Correcting Codes in Binary-Coded-Decimal Arithmetic,
Chao-Kai Liu and Tse Lin Wang,
IEEE Transactions on Computers, Vol. c-27 #11,
pp977–984,
IEEE,
November 1978.
Abstract: Error-correcting coding schemes devised for binary arithmetic are not in general applicable to BCD arithmetic. In this paper, we investigate the new problem of using such coding schemes in BCD systems. We first discuss the general characteristics of arithmetic errors and define the arithmetic weight and distance in BCD systems. We show that the distance is a metric function. Number theory is used to construct a class of single-error-correcting codes for BCD arithmetic. It is shown that the generator of these codes possesses a very simple form and the structure of these codes can be analytically determined. |
|
schrei1978
URL ¿Web? |
Two Methods for Fast Integer Binary-BCD Conversion,
F. A. Schreiber and R. Stefanelli,
Proc. 4th Symposium on Computer Arithmetic,
pp200–207,
IEEE Press,
October 1978.
Abstract: Two methods for performing binary-BCD conversion of positive integers are discussed. The principle which underlies both methods is the repeated division by five and then by two, obtained the first by means of subtractions performed from left to right, the second by shifting bits before next subtraction. It is shown that these methods work in a time which is linear with the length in bit of the number to be converted, A ROM solution is proposed and its complexity is compared with that of other methods. |
|
edgar1979
¿Web? |
FOCUS Microcomputer Number System,
Albert D. Edgar and Samuel C. Lee,
Communications of the ACM Vol. 22 #3,
pp166–177,
ACM Press,
March 1979.
Abstract: FOCUS is a number system and supporting computational algorithms especially useful for microcomputer control and other signal processing applications. FOCUS has the wide-ranging character of floating-point numbers with a uniformity of state distributions that give FOCUS better than a twofold accuracy advantage over an equal word length floating-point system. FOCUS computations are typically five times faster than single precision fixed-point or integer arithmetic for a mixture of operations, comparable in speed with hardware arithmetic for many applications. Algorithms for 8-bit and 16-bit implementations of FOCUS are included. |
|
rein1979
¿Web? |
Principles and Preferences for Computer Arithmetic,
Christian H. Reinsch,
ACM SIGNUM Vol. 14 #1,
pp12–27,
ACM Press,
March 1979.
Abstract: This working paper arose out of discussions on desirable hardware features for numerical calculation in the IFIP Working Group 2.5 on Numerical Software. It reflects the views of all members of the group, although no formal vote of approval has been taken; it is not an official IFIP document. Many people contributed ideas to this paper, especially T. J. Dekker, C. W. Gear, T. E. Hull, J. R. Rice, and J. L. Schonfeldor. |
|
cody1980
¿Web? |
Software Manual for the Elementary Functions, W. J. Cody and W. Waite, ISBN 0-13-822064-6, 269pp, Prentice-Hall, 1980. |
|
haven1980
¿Web? |
Decimal to Binary Floating Point Number Conversion Mechanism,
J. W. Havender,
IBM Technical Disclosure Bulletin, 07-80,
pp706–708,
IBM,
July 1980.
Abstract: Floating point numbers may be converted from decimal to binary using a high speed natural logarithm and exponential function calculation mechanism and a fixed point divide/multiply unit. The problem solved is to convert numbers expressed in a radix 10 floating point form to numbers expressed in a radix 2 floating point form. |
|
hull1980
¿Web? |
Principles, Preferences and Ideals for Computer Arithmetic,
Thomas E. Hull, Christian H. Reinsch, and John R. Rice,
CSD-TR-339,
13pp,
Dept. of Computer Science, Purdue University,
June 1980.
Abstract: This paper presents principles and preferences for the implementation of computer arithmetic and ideals for the arithmetic facilities in future programming languages. The implementation principles and preferences are for the current approaches to the design of arithmetic units. The ideals are for the long term development of programming languages, with the hope that arithmetic units will be built to support the requirements of programming languages. |
|
johan1980
¿Web? |
Decimal Shifting for an Exact Floating Point Representation,
J. D. Johannes, C. Dennis Pegden, and F. E. Petry,
Computers and Electrical Engineering, Vol. 7 #3,
pp149–155,
Elsevier,
September 1980.
Abstract: A floating point representation which permits exact conversion of decimal numbers is discussed. This requires the exponent to represent a power of ten, and thus decimal shifts of the mantissa are needed. A specialized design is analyzed for the problem of division by ten, which is needed for decimal shifting. |
|
brent1981
URL ¿Web? |
MP User's Guide (Fourth Edition),
Richard P. Brent,
73pp,
Dept. Computer Science, Australian National University, Canberra, TR-CS-81-08,
June 1981.
Abstract: MP is a multiple-precision floating-point arithmetic package. It is almost completely machine-independent, and should run on any machine with an ANSI Standard Fortran (ANS X3.9-1966) compiler, sufficient memory, and a wordlength (for integer arithmetic) of at least 16 bits. A precompiler (Augment) which facilitates the use of the MP package is available. ... MP works with normalized floating-point numbers. The base (B) and number of digits (T) are arbitrary, subject to some restrictions given below, and may be varied dynamically. ... |
|
chroust1981
¿Web? |
Method of Adding Decimal Numbers by Means of Binary Arithmetic,
G. Chroust,
IBM Technical Disclosure Bulletin, 03-81,
pp4525–4526,
IBM,
March 1981.
Abstract: The simulation of decimal arithmetic on a machine without packed arithmetic necessitates a method for simulating decimal addition by binary arithmetic. Decimal addition simulation is effected by simultaneously applying the following steps to as many digits (d1, d2, .., dn) of the decimal number as fit into the (binary = bin) word length of the object machine. 1. (Binary) addition of the two operands, 2. adding a `6’ in each digit position (this generates the correct carry), and 3. subtracting a `6’ in those places from which no carry resulted. |
|
griff1981
¿Web? |
Binary to Decimal Conversion,
L. K. Griffiths,
IBM Technical Disclosure Bulletin, 06-81,
pp237–238,
IBM,
June 1981.
Abstract: Binary to decimal conversion can be achieved by multiplying 1/10 as 51/512 x 256/255 and using the fact that 256/255 = 1 + 1/256 + 1/2562 ..., i.e., 256/255 = 257-256 rounded up. This method can be performed efficiently on short word computers with only adding and shifting operations, i.e., first multiplying by 51/512 and then correcting by multiplying by 256/255. |
|
ifrah1981
¿Web? |
The Universal History of Numbers,
Georges Ifrah,
ISBN 1-86046-324-X,
633pp,
The Harvill Press Ltd.,
1994.
Abstract: More than a history of counting and calculating from the caveman to the late twentieth century, this is the story of how the human race has learnt to think logically. The reader is taken through the whole art and science of numeration as it has developed all over the world, from Europe to China, via the Classical World, Mesopotamia, South America, and, above all, India and the Arab lands. ... Note: Translated from the French by David Bellos, E. F. Harding, Sophie Wood, and Ian Monk. (Also published is a translation of an earlier edition – From One to Zero: A Universal History of Numbers. Translated by Lowell Bair. Viking, New York, 1985.) |
|
johnst1982
¿Web? |
Representational error in binary and decimal numbering systems,
Paul Johnstone,
Proceedings of the 20th annual ACM Southeast Regional Conference,
pp85–88,
ACM Press,
1982.
Abstract: The representation of a general rational number of the form A/B as a floating point number requires a conversion from the general form to a base specific form. This conversion often results in the generation of infinitely repeating non-zero strings of digits which are truncated to the size of the mantissa resulting in a loss of precision. It is shown that the proportion of repeating versus finite rational numbers specific to a base is expotentially related to the number of unique prime factors of the base. Simulation results are presented which show the relative proportions of finite representations for binary and decimal cases over a range of mantissa sizes. |
|
sacks1982
¿Web? |
Applications of Redundant Number Representations to Decimal Arithmetic,
R. Sacks-Davis,
The Computer Journal, Vol. 25 #4,
pp471–477,
November 1982.
Abstract: A decimal arithmetic unit is proposed for both integer and floating-point computations. To achieve comparable speed to a binary arithmetic unit, the decimal unit is based on a redundant number representation. With this representation no loss of compactness is made relative to binary coded decimal (BCD) form. In this paper the hardware required for the implementation of the basic operations of addition, subtraction, multiplication and division are described and the properties of floating-point arithmetic based on a redundant number representation are investigated. |
|
cohen1983
¿Web? |
CADAC: A Controlled-Precision Decimal Arithmetic Unit,
Marty S. Cohen, T. E. Hull, and V. Carl Hamacher,
IEEE Transactions on Computers, Vol. 32 #4,
pp370–377,
IEEE,
April 1983.
Abstract: This paper describes the design of an arithmetic unit called CADAC (clean arithmetic with decimal base and controlled precision). Programming language specifications for carrying out “ideal” floating-point arithmetic are described first. These specifications include detailed requirements for dynamic precision control and exception handling, along with both complex and interval arithmetic at the level of a programming language such as Fortran or PL/I. CADAC is an arithmetic unit which performs the four floating-point operations add/subtract/multiply/divide on decimal numbers in such a way as to support all the language requirements efficiently. A three-level pipeline is used to overlap two-digit-at-a-time serial processing of the partial products/remainders. Although the logic design is relatively complex, the performance is efficient, and the advantages gained by implementing programmer-controlled precision directly in the hardware are significant. |
|
hp71spec1983
¿Web? |
Chapter 13 – Internal Data Representations,
Hewlett Packard Company,
Software Internal Design Specification for the HP-71, Vol. 1 Part #00071-90068,
pp13.1–13.17,
Hewlett Packard Company,
December 1983.
Abstract: This chapter discusses the format in which the HP-71 represents numeric or string data in memory or in the CPU registers. Note: Manual available from The Museum of HP Calculators (www.hpmuseum.org). |
|
kahan1983
URL ¿Web? |
Mathematics Written in Sand,
W. Kahan,
Proc. Joint Statistical Mtg. of the American Statistical Association,
pp12–26,
American Statistical Association,
1983.
Abstract: Simplicity is a Virtue; yet we continue to cram ever more complicated circuits ever more densely into silicon chips, hoping all the while that their internal complexity will promote simplicity of use. This paper exhibits how well that hope has been fulfilled by several inexpensive devices widely used nowadays for numerical computation. One of them is the Hewlett-Packard hp-15C programmable shirtpocket calculator, on which only a few keys need be pressed to perform tasks like these: Real and Complex arithmetic, including the elementary transcendental functions and their inverses; Matrix arithmetic including inverse, transpose, determinant, residual, norms, prompted input/output and complex-real conversion; Solve an equation and evaluate an Integral numerically; simple statistics; G and combinatorial functions; ... For instance, a stroke of its [1/X] key inverts an 8x8 matrix of 10-sig.-dec. numbers in 90 sec. This calculator costs under $100 by mail-order. Mathematically dense circuitry is also found in Intel’s 8087 coprocessor chip, currently priced below $200, which has for two years augmented the instruction repertoire of the 8086 and 8088 microcomputer chips to cope with ... Three binary floating-point formats 32, 64 and 80 bits wide; three binary integer formats 16, 32 and 64 bits wide; 18-digit BCDecimal integers; rational arithmetic, square root, format conversion and exception handling all in conformity with p754, the proposed IEEE arithmetic standard (see “Computer” Mar. 1, 1981); the kernels of transcendental functions exp, log, tan and arctan; and an internal stack of eight registers each 80 bits wide. For instance, the 8087 has been used to invert a 100x100 matrix of 64-bit floating-point numbers in 90 sec. Among the machines that can use this chip are the widely distributed IBM Personal Computers, each containing a socket already wired for an 8087. Several other manufacturers now produce arithmetic engines that, like the 8087, conform to the proposed IEEE arithmetic standard, so software that exploits its refined arithmetic properties should be widespread soon. As sophisticated mathematical operations come into use ever more widely, mathematical proficiency appears to rise; in a sense it actually declines. Computations formerly reserved for experts lie now within reach of whoever might benefit from them regardless of how little mathematics he understands; and that little is more likely to have been gleaned from handbooks for calculators and personal computers than from professors. This trend is pronounced among users of financial calculators like the hp-12C. Such trends ought to affect what and how we teach, as well as how we use mathematics, regardless of whether large fast computers, hitherto dedicated mostly to speed, ever catch up with some smaller machines’ progress towards mathematical robustness and convenience. |
|
clen1984
¿Web? |
Beyond Floating Point,
C. W. Clenshaw and F. W. J. Olver,
Journal of the ACM, Vol. 31 #2,
pp319–328,
ACM Press,
April 1984.
Abstract: A new number system is proposed for computer arithmetic based on iterated exponential functions. The main advantage is to eradicate overflow and underflow, but there are several other advantages and these are described and discussed. |
|
cody1984
¿Web? |
A Proposed Radix- and Word-length-independent Standard for Floating-point Arithmetic,
W. J. Cody, J. T. Coonen, D. M. Gay, K. Hanson, D. Hough, W. Kahan, R. Karpinski, J. Palmer, F. N. Ris, and D. Stevenson,
IEEE Micro magazine, Vol. 4 #4,
pp86–100,
IEEE,
August 1984.
Abstract: This article places [Draft 1.0 of IEEE 854] before the public for the first time. ... This article also includes material that describes how decisions were reached in preparing the P854 draft and explains how to overcome some of the implementation problems. Note: Reprinted in ACM SIGNUM, Vol. 20, #1, pp35-51, 1985. |
|
cowlis1984
¿Web? |
The Design of the REXX Language,
M. F. Cowlishaw,
IBM Systems Journal, Vol. 23 #4,
pp326–335,
IBM (Offprint # G321-5228),
1984.
Abstract: One way of classifying computer languages is by two classes: languages needing skilled programmers, and personal languages used by an expanding population of general users. REstructured eXtended eXecutor (REXX) is a flexible personal language designed with particular attention to feedback from its users. It has proved to be effective and easy to use, yet it is sufficiently general and powerful to fulfill the needs of many demanding professional applications. REXX is system and hardware independent, so that it has been possible to integrate it experimentally into several operating systems. Here REXX is used for such purposes as command and macro programming, prototyping, education, and personal programming. This study introduces REXX and describes the basic design principles that were followed in developing it. Note: First published as IBM Hursley Technical Report TR12.223, October 1983. |
|
jones1984
¿Web? |
A Significance Rule for Multiple-Precision Arithmetic,
Christopher B. Jones,
ACM Transactions on Mathematical Software (TOMS), Vol. 10 #1,
pp97–107,
ACM Press,
March 1984.
Abstract: Multiple-precision arithmetic overcomes the round-off error incurred in conventional floating-point arithmetic, at the cost of increased processing overhead. Significance arithmetic takes into account the inexactness of the operands of a calculation, but can lead to loss of significant digits after a long series of operations. A new technique is described which alleviates the overhead of multiple-precision arithmetic by allowing nonsignificant digits to be discarded, while limiting the significance loss per operation to a controllable and acceptable rate. The technique is based on storing an inexact number as an interval, using a criterion of significance to determine the precision with which the limits of the interval should be stored. A procedure referred to as a significance rule uses this criterion to remove some of the nonsignificant digits from the limits of an interval prior to storage. A certain number of nonsignificant digits are retained as guard digits. Calculations are performed using exact interval arithmetic and the significance-rule procedure is invoked after each operation to remove superfluous diglts. Round-off in the procedure causes a slight increase in the interval width on each operation. This results in a cumulative loss of significance at a rate related to the number of guard digits. |
|
auzing1985
¿Web? |
Accurate Arithmetic Results for Decimal Data on Non-Decimal Computers,
Winfried Auzinger and H. J. Stetter,
Computing, 35,
pp141–151,
1985.
Abstract: Recently, techniques have been devised and implemented which permit the computation of smallest enclosing machine number interval for the exact results of a good number of highly composite operations. These exact results refer, however, to the data as they are represented in the computer. This note shows how the conversion of decimal data into non-decimal representations may be joined with the mathematical operation on the data into one high-accuracy algorithm. Such an algorithm is explicitly presented for the solution of systems of linear equations. |
|
borl1985
URL ¿Web? |
Turbo Pascal Version 3.0 Reference Manual,
Borland International,
ISBN 0-87524-003-8,
386pp,
Borland International,
April 1985.
Abstract: Turbo Pascal 3 was the first Turbo Pascal version to support the Intel 8087 math co-processor (16-bit PC version). It also included support for Binary Coded Decimal (BCD) math to eliminate round off errors in business applications. Turbo Pascal 3 also allowed you to build larger programs (> 64k bytes) using overlays. The PC version also supported Turtle Graphics, Color, Sound, Window Routines, and more. |
|
hull1985a
¿Web? |
Numerical Turing,
T. E. Hull, A. Abrham, M. S. Cohen, A. F. X. Curley, C. B. Hall, D. A. Penny, and J. T. M. Sawchuk,
SIGNUM Newsletter, vol. 20 # 3,
pp26–34,
ACM Press,
July 1985.
Abstract: Numerical Turing is an extension of the Turing programming language. Turing is a Pascal-like language (with convenient string handling, dynamic arrays, modules, and more general parameter lists) developed at the University of Toronto. Turing has been in use since May, 1983, and is now available on several machines. The Numerical Turing extension is especialy designed for numerical calculations. The important new features are: (a) clean decimal arithmetic, along with convenient functions for directed roundings and exponent manipulation; (b) complete precision control of variables and operations. ... |
|
hull1985b
¿Web? |
Properly Rounded Variable Precision Square Root,
T. E. Hull and A. Abrham,
ACM Transactions on Mathematical Software, Vol. 11 #3,
pp229–237,
ACM Press,
September 1985.
Abstract: The square root function presented here returns a properly rounded approximation to the square root of its argument, or it raises an error condition if the argument is negative. Properly rounded means rounded to nearest, or to nearest even in case of a tie. It is variable precision in that it is designed to return a p-digit approximation to a p-digit argument, for any p > 0. (Precision p means p decimal digits.) The program and the analysis are valid for all p > 0, but current implementations place some restrictions on p. |
|
ieee1985
¿Web? |
IEEE 754-1985 IEEE Standard for Binary Floating-Point Arithmetic,
David Stevenson et al,
20pp,
IEEE,
July 1985.
Abstract: This standard defines a family of commercially feasible ways for new systems to perform binary floating-point arithmetic. The issues of retrofitting were not considered. It is intended that an implementation of a floating-point system conforming to this standard can be realized entirely in software, entirely in hardware, or in any combination of software and hardware. It is the environment the programmer or user of the system sees that conforms or fails to conform to this standard. Hardware components that require software support to conform shall not be said to conform apart from such software. Note: Reaffirmed 1991. |
|
hull1986
¿Web? |
Variable Precision Exponential Function,
T. E. Hull and A. Abrham,
ACM Transactions on Mathematical Software, Vol. 12 #2,
pp79–91,
ACM Press,
June 1986.
Abstract: The exponential function presented here returns a result which differs from ex by less than one unit in the last place, for any representable value of x which is not too close to values for which ex would overflow or underflow. (For values of x which are not within this range, an error condition is raised.) It is a “variable precision” function in that it returns a p-digit approximation for a p-digit argument, for any p > 0 (p-digit means p-decimal-digit). The program and analysis are valid for all p > 0, but current implementations place a restriction on p. The program is presented in a Pascal-like programming language called Numerical Turing which has special facilities for scientific computing, including precision control, directed roundings, and built-in functions for getting and setting exponents. |
|
knuth1986
¿Web? |
The IBM 650: An Appreciation from the Field,
Donald E. Knuth,
IEEE Annals of the History of Computing, Vol. 8 #1,
pp50–55,
IEEE,
January-March 1986.
Abstract: I suppose it was natural for a person like me to fall in love with his first computer. But there was something special about the IBM 650, something that has provided the inspiration for much of my life’s work. Somehow this machine was powerful in spite of its severe limitations. Somehow it was friendly in spite of its primitive man-machine interface... |
|
ahmad1987
¿Web? |
Implementable Decimal Arithmetic Algorithms for Micro/Minicomputers,
M. Ahmad,
Microprocessing and Microprogramming, Vol. 19 #2,
pp119–128,
February 1987.
Abstract: The need for efficient decimal arithmetic and its ever increasing applications in micro/minicomputers and microprocessor based equipment and appliances has been emphasised. Some algorithms suitable for implementation for decimal arithmetic operations of BCD packed decimal numbers have been suggested. These algorithms employ comparatively faster instructions available on most of the microprocessors and provide efficient and faster decimal arithmetic. |
|
bohl1987
¿Web? |
A Decimal Floating-Point Processor for Optimal Arithmetic,
G. Bohlender and T. Teufel,
Computer arithmetic: Scientific Computation and Programming Languages,
ISBN 3-519-02448-9,
pp31–58,
B. G. Teubner Stuttgart,
1987.
Abstract: A floating-point processor for optimal arithmetic should perform scalar products with maximum accuracy in addition to the usual operations +, -, *, /. This means that scalar products have to be computed with an error of at most one bit of the least significant digit, even if cancellation of leading digits occurs. In order to avoid conversion errors during input and output of numerical data, the decimal number system should be chosen. The arithmetic processor BAP-SC performs these operations in a 64 bit floating-point format with 13 decimal digits in the mantissa. The prototype is built in bit-slice technology on wire-wrap boards. Interfaces have been developed [sic] for several busses and computers. The arithmetic processor is fully integrated in the programming language PASCAL-SC. It supports operations in higher numerical spaces and new numerical algorithms that compute verified results with error bounds. |
|
duham1987
¿Web? |
Atari System Reference Manual, section 11,
Bob DuHamel,
Atari,
1987.
Abstract: The routines which do floating point arithmetic are a part of the operating system ROM. The Atari computer uses the 6502’s decimal math mode. This mode uses numbers represented in packed Binary Coded Decimal (BCD). This means that each byte of a floating point number holds two decimal digits. The actual method of representing a full number is complicated and probably not very important to a programmer. However, for those with the knowledge to use it, the format is given below... Note: 6 bytes: 10-digit BCD, 7-bit excess-64 exponent. |
|
hp71ref1987a
¿Web? |
Math Reference,
Hewlett Packard Company,
HP-71 Reference Manual, Mfg. # 0071-90110, Reorder # 0071-90010,
pp317–318,
Hewlett Packard Company,
October 1987.
Note: First edition October 1983. Subsections describe the numeric precisions available and the range of representable numbers. Manual available from The Museum of HP Calculators (www.hpmuseum.org). |
|
hp71ref1987b
¿Web? |
The IEEE Proposal for Handling Math Exceptions,
Hewlett Packard Company,
HP-71 Reference Manual, Mfg. # 0071-90110, Reorder # 0071-90010,
pp338–345,
Hewlett Packard Company,
October 1987.
Abstract: The IEEE Radix Independent Floating-Point Proposal divides all of the floating-point “exceptional events” encountered in calculations into five classes of math exceptions: invalid operation, division by zero, overflow, underflow, and inexact result. Associated with each math exception is a flag that is set by the HP-71 whenever an exception is encountered. These flags remain set until you clear them. Each of these flags can be accessed by its number or its name. Note: First edition October 1983. Manual available from The Museum of HP Calculators (www.hpmuseum.org). |
|
hull1987
¿Web? |
Toward an Ideal Computer Arithmetic,
T. E. Hull and M. S. Cohen,
Proceedings of the 8th Symposium on Computer Arithmetic,
pp131–138,
IEEE,
May 1987.
Abstract: A new computer arithmetic is described. Closely related built-in functions are included. A user’s point of view is taken, so that the emphasis is on what language features are available to a user. The main new feature is flexible precision control of decimal floating-point arithmetic. It is intended that the language facilities be sufficient for describing numerical processes one might want to implement, while at the same time being simple to use, and implementable in a reasonably efficient manner. Illustrative examples are based on experience with an existing software implementation. |
|
ieee1987
¿Web? |
IEEE 854-1987 IEEE Standard for Radix-Independent Floating-Point Arithmetic,
W. J. Cody et al,
14pp,
IEEE,
March 1987.
Abstract: It is intended that an implementation of a floating-point system conforming to this standard can be realized entirely in software, entirely in hardware, or in any combination of software and hardware. It is the environment the programmer or user of the system sees that conforms or fails to conform to this standard. Hardware components that require software support to conform shall not be said to conform apart from such software. Note: Reaffirmed 1994. |
|
mass1987
¿Web? |
Superoptimizer: A Look at the Smallest Program,
Henry Massalin,
ACM Sigplan Notices, Vol. 22 #10 (Proceedings of the Second International Conference on Architectual support for Programming Languages and Operating Systems),
pp122–126,
ACM, also IEEE Computer Society Press #87CH2440-6,
October 1987.
Abstract: Given an instruction set, the superoptimizer finds the shortest program to compute a function. Startling programs have been generated, many of them engaging in convoluted bit-fiddling bearing little resemblance to the source programs which defined the functions. The key idea in the superoptimizer is a probabilistic test that makes exhaustive searches practical for programs of useful size. The search space is defined by the processor’s instruction set, which may include the whole set, but it is typically restricted to a subset. By constraining the instructions and observing the effect on the output program, one can gain insight into the design of instruction sets. In addition, superoptimized programs may be used by peephole optimizers to improve the quality of generated code, or by assembly language programmers to improve manually written code. Note: Also in: ACM SIGOPS, Operating Systems Review, Vol. 21 # 4. |
|
shirazi1988
¿Web? |
VLSI designs for redundant binary-coded decimal addition,
Behrooz Shirazi, David Y. Y. Yun, and Chang N. Zhang,
IEEE Seventh Annual International Phoenix Conference on Computers and Communications, 1988,
pp52–56,
IEEE,
March 1988.
Abstract: Binary-coded decimal (BCD) system provides rapid binary-decimal conversion. However, BCD arithmetic operations are often slow and require complex hardware. One can eliminate the need for carry propagation and thus improve performance of BCD operations by using a redundant binary-coded decimal (RBCD) system. This paper introduces the VLSI design of an RBCD adder. The design consists of two small PLA’s and two four-bit binary adders for one digit of the RBCD adder. The addition delay is constant for n-digit RBCD addition (no carry propagation delay). The VLSI time and space complexities of the design as well as its layout are presented, showing the regularity of the structures. In addition, two simple algorithms and the corresponding hardware designs for conversion between RBCD and BCD are presented. |
|
johnst1989
¿Web? |
Higher Radix Floating Point Representations, P. Johnstone and F. Petry, Proceedings of the 9th Symposium on Computer Arithmetic, ISBN 0-8186-8963-3, pp128–135, |