When we think of representing approximate mathematical operations that a conventional FP number cannot do, there is one of the several approaches including (1) upper/lower number representation , (2) biased FP representation , (3) FP approximation , (4) approximate logarithmic addition [17,18], and (5) LNS [29, 34].
Fig. 2 shows a brief outline of IEEE standard library functions to process FP numbers. FP number to be represented to exact binary representation is first converted to SP by converting mantissa to integer and biased exponent . The biased exponent and biased mantissa are also converted to integer to be represented. Then, these integer numbers are added/subtracted to binary representation with this conversion procedure. While this FP representation can be processed by such functions as floatToDouble and doubleToFloat from IEEE standard library functions, it is inflexible for approximate computations due to the lack of sign information and hidden number one in FP . Moreover, it is also costly for memory usage with converting to and from SP and DP representations during computations. Also, especially with the presence of overflow/underflow, the time complexity of these operations is more than 2 orders of magnitude higher than that of integer operations . In addition, IEEE standard format allows only addition and subtraction among IEEE real numbers. So, there is no function to represent a value as a difference or sum of two or more other values .
In a conventional FP number representing scheme, the mantissa value is manipulated to represent a number. For example, 1/3 is represented by mantissa 1.111111 and exponent 2. Since the FP mantissa is in decimal format, the most significant bit is always 1 (unless the leading bit of the exponent is 1). When this mantissa is converted to integer "x", its value is x/2prec when x is odd, and x/2prec±bias where bias is the bias for the FP format when x is even. d2c66b5586