A precision- and range-independent tool for testing floating-point arithmetic II: Conversions

被引:4
作者
Verdonk, B [1 ]
Cuyt, A [1 ]
Verschaeren, D [1 ]
机构
[1] Univ Instelling Antwerp, Dept Math & Comp Sci, B-2610 Antwerp, Belgium
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 2001年 / 27卷 / 01期
关键词
verification; multiprecision; floating-point; arithmetic; IEEE floating-point standard; validation; conversion; decimal;
D O I
10.1145/382043.382405
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
The IEEE 754 and 854 standards for floating-point arithmetic are essentially a specification of a programming environment, encompassing aspects from computer hardware, operating systems, and compilers to programming languages (see especially Section 8). Parts I and II of this paper together describe a tool to test floating-point implementations of arbitrary precision and exponent range (hardware as well as software) for compliance with the principles outlined in the IEEE standards. The tool consists of a driver program, together with a very large set of test vectors encoded in a precision-independent syntax. In Part I we have covered the testing of the basic operations +, -, x, / and of the square root and remainder functions. In Part II we describe the extension of the test tool to deal with conversions between floating-point formats, conversions between floating-point and integer formats, the rounding of floating-point numbers to integral values, and binary-decimal conversions. Conversions can now be tested from a floating-point format of arbitrary precision and exponent range to another arbitrary smaller (larger) floating-point format as well as to and from fixed hardware integer formats. Conversions between the bases 2 and 10 can be tested for a number of precisions ranging from single (24 bits), double (53 bits), long double or extended (64 bits) to quadruple (113 bits) precision and a proper multiprecision (240 bits) format. We conclude Part II with some applications of our test tool and report on the results of testing various floating-point implementations, meaning various language-compiler-hardware combinations as well as multiprecision libraries.
引用
收藏
页码:119 / 140
页数:22
相关论文
共 17 条
[1]  
*ANSIISOIEC, 1999, 9899 ANSIISOIEC
[2]  
*ANSIISOIEC, 1998, 148821998 ANSIISOIEC
[3]  
*ANSIISOIEC, 1997, 15391 ANSIISOIEC
[4]  
*COMM J3, 2000, J301007 COMM J3
[5]  
COONEN J, 1984, THESIS U CALIFORNIA
[6]  
CUYT A, 2000, UNDERFLOW REVISITED
[7]  
CUYT A, 2000, ARITHMOS PROJECT
[8]  
GAY D, 1990, 9010 AT T BELL LAB I
[9]  
HOUGH D, 1988, UCBTEST SUITE PROGRA
[10]  
*IEEE, 1987, 8541987 IEEE