Browse Prior Art Database

Floating-Point Conversions Without Table Lookups

IP.com Disclosure Number: IPCOM000038320D
Original Publication Date: 1987-Jan-01
Included in the Prior Art Database: 2005-Jan-31
Document File: 1 page(s) / 12K

Publishing Venue

IBM

Related People

Breed, LM: AUTHOR [+2]

Abstract

This invention relates to a method for floating-point (FP) radix conversion in a nondecimal FP arithmetic processor. The method steps include (a) being responsive to a decimal-coded numeric signal value x and an integer p, multiplying p x log1610 = t; (b) partitioning t into an integer (r) and fractional (w) part; (c) converting value x to floating point form; (d) computing 2(4w); and (e) forming the product x2(4w) and adjusting the hexadecimal exponent by r. Decimal to Hexadecimal Conversion Given a decimal number of the form X x 10p, find a floating point number Z in the normal System/360 range such that Z x 16r = X x 10p, where p and r are integers. Let 10p = 16t so that t = plog1610. Define r = int(t) as the integer part of t, and w = t-r. Now .CE Z = X x 10p16-r = X x 16w = X x 24w .

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 62% of the total text.

Page 1 of 1

Floating-Point Conversions Without Table Lookups

This invention relates to a method for floating-point (FP) radix conversion in a nondecimal FP arithmetic processor. The method steps include (a) being responsive to a decimal-coded numeric signal value x and an integer p, multiplying p x log1610 = t; (b) partitioning t into an integer (r) and fractional (w) part; (c) converting value x to floating point form; (d) computing 2(4w); and
(e) forming the product x2(4w) and adjusting the hexadecimal exponent by r. Decimal to Hexadecimal Conversion Given a decimal number of the form X x 10p, find a floating point number Z in the normal System/360 range such that Z x 16r = X x 10p, where p and r are integers. Let 10p = 16t so that t = plog1610. Define r = int(t) as the integer part of t, and w = t-r. Now .CE Z = X x 10p16-r = X x 16w = X x 24w . Computed in this way, Z is of order unity. The variable r is chosen in this way to keep w small to minimize the errors in computing 24w . X is converted from decimal to System/370 floating point with the standard conversion algorithm, the result is multiplied by 24w, and r is added to the hexadecimal exponent. The conversion from decimal to floating point is carried out to one more hexadecimal digit than is in the result.

In order to maintain sufficient accuracy, the calculation of 24w and all arithmetic operations are carried out with extra precision. Hexadecimal to Decimal Conversion Given X x 16p, find a floating point number Z...