Abstract
Arithmetical and relational operations in a machine must be designed in such a way that it enables us to make reliable, portable, efficient software. Therefore, operations must deliver either the correct result or an indication (trap, flag bit) that the operation has not been correctly performed. Incorrect results should be best possible, in order to increase software robustness.
Some consequences are: relational operations must always be correct; the result of integral arithmetical operations must be exact and that of real operations should be correctly rounded when the exact result is within certain (machine dependent) bounds; operations on single-precision operands yielding an exact (or correctly rounded) double-precision result should also be available.
Preview
Unable to display preview. Download preview PDF.
References
Brent, R. P., On the Precision Attainable With Various Floating-Point Number Systems, IEEE Trans. on Computers, pp. 601–607, (1973).
Brown, W. S., and Hall, A. D., FORTRAN Portability Via Models and Tools, To be published (1977).
Brown, W. S., and Richman, P. L., The Choice of Base, Comm. ACM 12, pp. 560–561 (1969).
Bus, J. C. P., and Dekker, T. J., Two Efficient Algorithms With Guaranteed Convergence for Finding a Zero of a Function, ACM Transactions on Mathematical Software 1, pp. 330–345 (1975).
Cody, W. J., Desirable Hardware Characteristics for Scientific Computation, SIGNUM Newsletter 6, pp. 16–31 (1971).
Cody, W. J., Desirable Arithmetic Design of Proposed MATHNET Computer, Letter to Gabriel, Argonne National Laboratory (1974).
Dekker, T. J., A Floating-Point Technique for Extending the Available Precision, Num. Math. 18, pp. 224–242 (1971).
Einarsson, B., IFIP Working Group on Numerical Software, SIGNUM Newsletter 9, pp. 3–4 (1974).
Grau, A. A., On a Floating-Point Number Representation for Use With Algorithmic Languages, Comm. ACM 5, pp. 160–161 (1962).
Kahan, W., Implementation of Algorithms, Part I, Technical Report 20, University of California, Berkeley (1973).
Knuth, D. E., The Art of Computer Programming, Vol. 2/Seminumerical Algorithms, Addison-Wesley (1969).
Meertens, L. G. L. T., A Note on Integral Division, ALGOL Bulletin, No. 39, pp. 30–32 (1976).
Reinsch, C. H., Building a Library of Numerical Algorithms: A Case Study From the Handbook "Linear Algebra," Paper presented at the first meeting of WG 2.5 at Oxford (1975).
Tanenbaum, A. S., Structured Computer Organisation, Prentice-Hall (1976).
Editor information
Rights and permissions
Copyright information
© 1977 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dekker, T.J. (1977). Machine requirements for reliable, portable software. In: Cowell, W. (eds) Portability of Numerical Software. Lecture Notes in Computer Science, vol 57. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-08446-0_33
Download citation
DOI: https://doi.org/10.1007/3-540-08446-0_33
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-08446-4
Online ISBN: 978-3-540-37071-0
eBook Packages: Springer Book Archive