Decimal Floating Point Composition Using Packed Decimal Intermediates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies face challenges in converting data from human-readable decimal formats to decimal floating point formats without loss of accuracy, particularly in processing environments where intermediate data types like signed packed decimal and signed binary integer are used.

Innovation Solution

The implementation of computer-readable program code logic that converts the significand and exponent from intermediate formats to decimal floating point format, utilizing instructions such as Convert signed Packed and Convert From Signed Packed to compose decimal floating point data, ensuring accurate representation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If data is converted from human-readable decimal format to decimal floating point format through intermediate formats, then the data can be processed in the processing environment, but accuracy loss occurs during the conversion process

Engineering Contradiction:
Improveconversion accuracyVSAvoidprecision loss
Core Design Contradiction:
ReliabilityVSLoss of information

Solution Approach 1:

The patent uses signed packed decimal and signed binary integer as intermediate data types to bridge the conversion from human-readable decimal format to decimal floating point format. These intermediates preserve accuracy by maintaining exact decimal representations during transformation, avoiding the rounding errors that would occur with direct binary conversion.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The conversion process is divided into distinct segments: first converting the significand from human-readable decimal to signed packed decimal format, then converting the exponent to signed binary integer format, and finally assembling these into the decimal floating point format. This segmentation allows each conversion step to maintain precision independently.

Inventive Principle:
Principle #1Segmentation

2Productivity

If direct conversion from human-readable format to decimal floating point format is attempted, then conversion speed may improve, but accuracy is compromised

Engineering Contradiction:
Improveconversion speedVSAvoiddecimal precision
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The signed packed decimal serves as an intermediary that preserves exact decimal values while enabling efficient hardware-level conversion. This intermediate representation allows the system to maintain full decimal precision without requiring slow software-based arbitrary-precision arithmetic, thus achieving both speed and accuracy.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If binary floating point is used instead of decimal floating point, then processing efficiency improves, but representation accuracy of decimal fractions deteriorates

Engineering Contradiction:
Improveprocessing efficiencyVSAvoiddecimal fraction representation
Core Design Contradiction:
ProductivityVSMeasurement precision

Solution Approach 1:

The patent changes the base parameter of the floating point representation from binary to decimal. By using decimal digits in the significand and decimal-based exponent scaling, the system can exactly represent decimal fractions like 0.1 that are impossible to represent exactly in binary floating point, while maintaining processing efficiency through hardware-supported decimal arithmetic.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS8051118B2Composition of decimal floating point data
Publication Date: 2011.11.01 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8051118B2 patent drawing
  • US8051118B2 patent drawing
  • US8051118B2 patent drawing

AI summary

A decimal floating point finite number in a decimal floating point format is composed from the number in a different format. A decimal floating point format includes fields to hold information relating to the sign, exponent and significand of the decimal floating point finite number. Other decimal floating point data, including infinities and NaNs (not a number), are also composed. Decimal floating point data are also decomposed from the decimal floating point format to a different format.