A Software Implementation of the IEEE 754R Decimal Floating-Point Arithmetic Using the Binary Encoding Format

The IEEE Standard 754-1985 for binary floating-point arithmetic [19] was revised [20], and an important addition is the definition of decimal floating-point arithmetic [8], [24]. This is intended mainly to provide a robust reliable framework for financial applications that are often subject to legal...

Celý popis

Uloženo v:
Podrobná bibliografie
Vydáno v:IEEE transactions on computers Ročník 58; číslo 2; s. 148 - 162
Hlavní autoři: Cornea, M., Harrison, J., Anderson, C., Tang, P., Schneider, E., Gvozdev, E.
Médium: Journal Article
Jazyk:angličtina
Vydáno: New York IEEE 01.02.2009
The Institute of Electrical and Electronics Engineers, Inc. (IEEE)
Témata:
ISSN:0018-9340, 1557-9956
On-line přístup:Získat plný text
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Abstract The IEEE Standard 754-1985 for binary floating-point arithmetic [19] was revised [20], and an important addition is the definition of decimal floating-point arithmetic [8], [24]. This is intended mainly to provide a robust reliable framework for financial applications that are often subject to legal requirements concerning rounding and precision of the results, because the binary floating-point arithmetic may introduce small but unacceptable errors. Using binary floating-point calculations to emulate decimal calculations in order to correct this issue has led to the existence of numerous proprietary software packages, each with its own characteristics and capabilities. The IEEE 754R decimal arithmetic should unify the ways decimal floating-point calculations are carried out on various platforms. New algorithms and properties are presented in this paper, which are used in a software implementation of the IEEE 754R decimal floating-point arithmetic, with emphasis on using binary operations efficiently. The focus is on rounding techniques for decimal values stored in binary format, but algorithms are outlined for the more important or interesting operations of addition, multiplication, and division, including the case of nonhomogeneous operands, as well as conversions between binary and decimal floating-point formats. Performance results are included for a wider range of operations, showing promise that our approach is viable for applications that require decimal floating-point calculations. This paper extends an earlier publication [6].
AbstractList The IEEE Standard 754-1985 for binary floating-point arithmetic [19] was revised [20], and an important addition is the definition of decimal floating-point arithmetic [8], [24]. This is intended mainly to provide a robust reliable framework for financial applications that are often subject to legal requirements concerning rounding and precision of the results, because the binary floating-point arithmetic may introduce small but unacceptable errors. Using binary floating-point calculations to emulate decimal calculations in order to correct this issue has led to the existence of numerous proprietary software packages, each with its own characteristics and capabilities. The IEEE 754R decimal arithmetic should unify the ways decimal floating-point calculations are carried out on various platforms. New algorithms and properties are presented in this paper, which are used in a software implementation of the IEEE 754R decimal floating-point arithmetic, with emphasis on using binary operations efficiently. The focus is on rounding techniques for decimal values stored in binary format, but algorithms are outlined for the more important or interesting operations of addition, multiplication, and division, including the case of nonhomogeneous operands, as well as conversions between binary and decimal floating-point formats. Performance results are included for a wider range of operations, showing promise that our approach is viable for applications that require decimal floating-point calculations. This paper extends an earlier publication [6].
The IEEE Standard 754-1985 for binary floating-point arithmetic [19] was revised [20], and an important addition is the definition of decimal floating-point arithmetic [8], [24]. This is intended mainly to provide a robust reliable framework [abstract truncated by publisher].
The focus is on rounding techniques for decimal values stored in binary format, but algorithms are outlined for the more important or interesting operations of addition, multiplication, and division, including the case of nonhomogeneous operands, as well as conversions between binary and decimal floating-point formats.
Author Schneider, E.
Harrison, J.
Anderson, C.
Cornea, M.
Tang, P.
Gvozdev, E.
Author_xml – sequence: 1
  givenname: M.
  surname: Cornea
  fullname: Cornea, M.
  organization: Intel Corp., Hillsboro, OR
– sequence: 2
  givenname: J.
  surname: Harrison
  fullname: Harrison, J.
  organization: Intel Corp., Hillsboro, OR
– sequence: 3
  givenname: C.
  surname: Anderson
  fullname: Anderson, C.
  organization: Intel Corp., Hillsboro, OR
– sequence: 4
  givenname: P.
  surname: Tang
  fullname: Tang, P.
  organization: D.E. Shaw Res. LLC, New York, NY
– sequence: 5
  givenname: E.
  surname: Schneider
  fullname: Schneider, E.
  organization: Intel Corp., Hillsboro, OR
– sequence: 6
  givenname: E.
  surname: Gvozdev
  fullname: Gvozdev, E.
  organization: Diveevo District, Intel Corp., Satis
BookMark eNqF0c9rFDEUB_AgFdxWTx69BA96kKnJ5Mckx3Wd1UJB0e15yGZebMpMsiZZpP-9GVc8FNTLCzw-L7zke47OQgyA0HNKLikl-u1uc9kSomrRj9CKCtE1Wgt5hlaEUNVoxskTdJ7zHSFEVrRC8xp_ja78MAnw1XyYYIZQTPEx4Ohwua3dvu9xJ_gX_B6sn82Et1OsInxrPkcfCl4nX25nKN7im1zbv6be-WDSPe6DjePS28Y0m_IUPXZmyvDs93mBbrb9bvOxuf704Wqzvm4s57Q0jomRmU5bM2oFY0cMEcSovWtla_eOaUcVUEelBNkqMJQ6p7nr9kJoTUZgF-j16d5Dit-PkMsw-2xhmkyAeMyDJkxyIZX-r1RSK0lEt8hX_5Ssrq50qyp8-QDexWMK9b2DElIzQTiriJ6QTTHnBG6w_vTvJRk_DZQMS6LDbjMsidaybPDmwcwh1UDS_V_0i5P2APBHctlxxlv2E5Xgqlo
CODEN ITCOB4
CitedBy_id crossref_primary_10_1109_TC_2012_89
crossref_primary_10_1109_TC_2012_35
crossref_primary_10_1007_s40031_021_00657_8
crossref_primary_10_1016_j_cirp_2018_05_003
crossref_primary_10_3390_computers10020017
crossref_primary_10_1049_iet_cdt_2011_0089
crossref_primary_10_1109_TC_2015_2479602
crossref_primary_10_1007_s11265_013_0795_6
crossref_primary_10_1007_s11227_023_05808_w
crossref_primary_10_1109_TC_2011_43
crossref_primary_10_1109_TC_2011_217
crossref_primary_10_1007_s10836_024_06123_9
crossref_primary_10_1016_j_entcs_2015_10_010
crossref_primary_10_1109_ACCESS_2023_3244891
Cites_doi 10.1109/ARITH.2007.7
10.1109/ACSSC.2002.1196949
10.1109/40.768506
10.1109/ieeestd.1985.82928
10.1147/rd.511.0217
10.1109/ARITH.2003.1207666
10.1145/103162.103163
10.1109/ASAP.2003.1212858
10.1145/221332.221334
10.1145/368518.368529
10.3403/00836057
10.1109/ACSSC.2001.987708
10.1049/ip-cdt:20020407
10.1109/TC.1983.1676238
ContentType Journal Article
Copyright Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2009
Copyright_xml – notice: Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2009
DBID 97E
RIA
RIE
AAYXX
CITATION
7SC
7SP
8FD
JQ2
L7M
L~C
L~D
F28
FR3
DOI 10.1109/TC.2008.209
DatabaseName IEEE All-Society Periodicals Package (ASPP) 2005-present
IEEE All-Society Periodicals Package (ASPP) 1998-Present
IEEE Electronic Library (IEL)
CrossRef
Computer and Information Systems Abstracts
Electronics & Communications Abstracts
Technology Research Database
ProQuest Computer Science Collection
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts – Academic
Computer and Information Systems Abstracts Professional
ANTE: Abstracts in New Technology & Engineering
Engineering Research Database
DatabaseTitle CrossRef
Technology Research Database
Computer and Information Systems Abstracts – Academic
Electronics & Communications Abstracts
ProQuest Computer Science Collection
Computer and Information Systems Abstracts
Advanced Technologies Database with Aerospace
Computer and Information Systems Abstracts Professional
Engineering Research Database
ANTE: Abstracts in New Technology & Engineering
DatabaseTitleList Technology Research Database
Technology Research Database
Technology Research Database

Technology Research Database
Database_xml – sequence: 1
  dbid: RIE
  name: IEEE Electronic Library (IEL)
  url: https://ieeexplore.ieee.org/
  sourceTypes: Publisher
DeliveryMethod fulltext_linktorsrc
Discipline Engineering
Computer Science
EISSN 1557-9956
EndPage 162
ExternalDocumentID 2292130421
10_1109_TC_2008_209
4674342
Genre orig-research
GroupedDBID --Z
-DZ
-~X
.55
.DC
0R~
29I
3EH
3O-
4.4
5GY
5VS
6IK
85S
97E
AAJGR
AARMG
AASAJ
AAWTH
ABAZT
ABFSI
ABQJQ
ABVLG
ACGFO
ACIWK
ACNCT
AENEX
AETEA
AETIX
AGQYO
AGSQL
AHBIQ
AI.
AIBXA
AKJIK
AKQYR
ALLEH
ALMA_UNASSIGNED_HOLDINGS
ASUFR
ATWAV
BEFXN
BFFAM
BGNUA
BKEBE
BPEOZ
CS3
DU5
E.L
EBS
EJD
HZ~
H~9
IAAWW
IBMZZ
ICLAB
IEDLZ
IFIPE
IFJZH
IPLJI
JAVBF
LAI
M43
MS~
MVM
O9-
OCL
P2P
PQQKQ
RIA
RIE
RNI
RNS
RXW
RZB
TAE
TN5
TWZ
UHB
UKR
UPT
VH1
X7M
XJT
XOL
XZL
YXB
YYQ
YZZ
ZCG
AAYXX
ABUFD
CITATION
7SC
7SP
8FD
JQ2
L7M
L~C
L~D
RIG
F28
FR3
ID FETCH-LOGICAL-c441t-f35d3a79cad98ed70a050a8bf262cbf39f18e1f166e628ea11ff94f7b55990de3
IEDL.DBID RIE
ISICitedReferencesCount 27
ISICitedReferencesURI http://www.webofscience.com/api/gateway?GWVersion=2&SrcApp=Summon&SrcAuth=ProQuest&DestLinkType=CitingArticles&DestApp=WOS_CPL&KeyUT=000261846600002&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
ISSN 0018-9340
IngestDate Sun Sep 28 02:48:03 EDT 2025
Sat Sep 27 19:21:47 EDT 2025
Sun Sep 28 12:16:40 EDT 2025
Mon Jun 30 05:40:37 EDT 2025
Sat Nov 29 08:09:46 EST 2025
Tue Nov 18 21:20:28 EST 2025
Wed Aug 27 02:49:02 EDT 2025
IsDoiOpenAccess false
IsOpenAccess true
IsPeerReviewed true
IsScholarly true
Issue 2
Keywords General
Software libraries
Numerical Algorithms and Problems
Standards
Language English
License https://ieeexplore.ieee.org/Xplorehelp/downloads/license-information/IEEE.html
LinkModel DirectLink
MergedId FETCHMERGED-LOGICAL-c441t-f35d3a79cad98ed70a050a8bf262cbf39f18e1f166e628ea11ff94f7b55990de3
Notes ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ObjectType-Article-2
ObjectType-Feature-1
content type line 23
PQID 856935043
PQPubID 23500
PageCount 15
ParticipantIDs proquest_journals_856935043
crossref_primary_10_1109_TC_2008_209
crossref_citationtrail_10_1109_TC_2008_209
proquest_miscellaneous_903645689
proquest_miscellaneous_869860579
ieee_primary_4674342
proquest_miscellaneous_34418928
PublicationCentury 2000
PublicationDate 2009-02-01
PublicationDateYYYYMMDD 2009-02-01
PublicationDate_xml – month: 02
  year: 2009
  text: 2009-02-01
  day: 01
PublicationDecade 2000
PublicationPlace New York
PublicationPlace_xml – name: New York
PublicationTitle IEEE transactions on computers
PublicationTitleAbbrev TC
PublicationYear 2009
Publisher IEEE
The Institute of Electrical and Electronics Engineers, Inc. (IEEE)
Publisher_xml – name: IEEE
– name: The Institute of Electrical and Electronics Engineers, Inc. (IEEE)
References ref12
ref15
ref14
Gray (ref16) 2001; 2
ref11
(ref23) 2008
(ref20) 2006
(ref25) 2004
ref17
ref19
Boldo (ref2)
Duale (ref10) 2007
Wang (ref26)
(ref22) 2005
Bohlender (ref1) 1987
ref21
Tang (ref24)
(ref18) 1998
Weik (ref27) 2007
ref8
ref7
ref4
(ref13) 1998
ref3
ref6
ref5
Cowlishaw (ref9) 2006
References_xml – ident: ref24
  article-title: Binary-Integer Decimal Encoding for Decimal Floating Point
– ident: ref6
  doi: 10.1109/ARITH.2007.7
– volume-title: The Introduction of the Euro and the Rounding of Currency Amounts
  year: 1998
  ident: ref13
– start-page: 31
  volume-title: Computer Arithmetic: Scientific Computation and Programming Languages
  year: 1987
  ident: ref1
  article-title: A Decimal Floating-Point Processor for Optimal Arithmetic
– volume-title: C# Language Specification
  year: 2005
  ident: ref22
– volume-title: The decNumber Library
  year: 2006
  ident: ref9
– ident: ref11
  doi: 10.1109/ACSSC.2002.1196949
– volume-title: The ENIAC Story
  year: 2007
  ident: ref27
– ident: ref26
  article-title: Processor Support for Decimal Floating-Point Arithmetic
– ident: ref17
  doi: 10.1109/40.768506
– ident: ref19
  doi: 10.1109/ieeestd.1985.82928
– volume-title: IBM J. Research and Development
  year: 2007
  ident: ref10
  article-title: Decimal Floating-Point in z9: An Implementation and Testing Perspective
  doi: 10.1147/rd.511.0217
– ident: ref8
  doi: 10.1109/ARITH.2003.1207666
– ident: ref15
  doi: 10.1145/103162.103163
– volume-title: Draft Standard for Floating-Point Arithmetic P754, Draft 1.2.5.
  year: 2006
  ident: ref20
– volume-title: Class BigDecimal
  year: 2008
  ident: ref23
– ident: ref12
  doi: 10.1109/ASAP.2003.1212858
– ident: ref14
  doi: 10.1145/221332.221334
– ident: ref3
  doi: 10.1145/368518.368529
– volume-title: Proc. 17th IMACS World Congress, Scientific Computation, Applied Math. and Simulation
  ident: ref2
  article-title: When Double Rounding Is Odd
– ident: ref21
  doi: 10.3403/00836057
– ident: ref4
  doi: 10.1109/ACSSC.2001.987708
– ident: ref7
  doi: 10.1049/ip-cdt:20020407
– volume: 2
  issue: 3
  year: 2001
  ident: ref16
  article-title: UNIVAC I Instruction Set
  publication-title: Unisys History Newsletter
– ident: ref5
  doi: 10.1109/TC.1983.1676238
– volume-title: The Telco Benchmark
  year: 1998
  ident: ref18
– volume-title: XML Scheme Part 2: Datatypes Second Edition
  year: 2004
  ident: ref25
SSID ssj0006209
Score 2.0761878
Snippet The IEEE Standard 754-1985 for binary floating-point arithmetic [19] was revised [20], and an important addition is the definition of decimal floating-point...
The focus is on rounding techniques for decimal values stored in binary format, but algorithms are outlined for the more important or interesting operations of...
SourceID proquest
crossref
ieee
SourceType Aggregation Database
Enrichment Source
Index Database
Publisher
StartPage 148
SubjectTerms Accuracy
Algorithms
Approximation methods
Arithmetic
binary-decimal conversion
Computer arithmetic
Computer programs
correct rounding
decimal floating-point
Decimals
Encoding
Floating point arithmetic
Format
Hardware
Mathematical analysis
multiple-precision arithmetic
Software
Table lookup
Title A Software Implementation of the IEEE 754R Decimal Floating-Point Arithmetic Using the Binary Encoding Format
URI https://ieeexplore.ieee.org/document/4674342
https://www.proquest.com/docview/856935043
https://www.proquest.com/docview/34418928
https://www.proquest.com/docview/869860579
https://www.proquest.com/docview/903645689
Volume 58
WOSCitedRecordID wos000261846600002&url=https%3A%2F%2Fcvtisr.summon.serialssolutions.com%2F%23%21%2Fsearch%3Fho%3Df%26include.ft.matches%3Dt%26l%3Dnull%26q%3D
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
journalDatabaseRights – providerCode: PRVIEE
  databaseName: IEEE Electronic Library (IEL)
  customDbUrl:
  eissn: 1557-9956
  dateEnd: 99991231
  omitProxy: false
  ssIdentifier: ssj0006209
  issn: 0018-9340
  databaseCode: RIE
  dateStart: 19680101
  isFulltext: true
  titleUrlDefault: https://ieeexplore.ieee.org/
  providerName: IEEE
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV1Lb9QwEB6VigMcaGlBhFLqQ0-IUDvO-nEsS1c9oKqCBfUW2c5YXamboN0s_H1sJxtVoj1wi5SxHGUyD2fm-wbgtNQhKhnhIhWiyMuC-tya2uXWMWbRW8kSffHPr_LqSt3c6Osd-DhiYRAxNZ_hp3iZavl16zbxV9lZnIzBy-Bwn0gpeqzW6HXFtp2DBQPmJR2weIzqs_m075ksYtfhveiTxqn844NTYJnt_d8j7cOLIYEk573GX8IONgewtx3OQAZbPYDn95gGD2F5Tr4Hh_vHrJAkQuDlgDlqSOtJSAJJPPUROSm_kS_oFsuwxeyuNbEpOr9uF00Xdlx0t8uIeSSpzyCt-pzgvOSicW0MgmSWUuBX8GN2MZ9e5sOkhdyFdKjLPZ_U3EjtTK0V1pIaOqFGWV-IwlnPtWcKmWdCoCgUGsa816WXNvKV0Rr5a9ht2gbfADGe1tZqaZHL0jmvlLNhTRlMn9fhCJzBh60GKjfQkMdpGHdVOo5QXc2n_WzMoK4MTkfhXz37xsNih1Ezo8iglAyOtqqtBstcV2oiNI-0bRmcjHeDScU6iWmw3awrHt6J0oXKgDwioYRWIsJ4HxfRqcArlH778MMdwbO-MBU7Y97Bbrfa4DE8db-7xXr1Pn3bfwFeH_hk
linkProvider IEEE
linkToHtml http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwlV3db9MwED9NGxLwwGADEQbMD3tChNmx49iPW1k1RKkmKGhvke3YotKaTG26_fuznTSaxPbAW6ScYyuX-8rd_Q7giElvlRQ3AQqRpyzDLtWqMqk2hGjrdEEifPGfSTGdistLebEFn4deGGttLD6zX8JlzOVXjVmHX2XHYTIGZV7h7uTMP7br1hr0Lt8UdBAvwpThvhuPYHk8G3VVk1moO7xnf-JAlX-0cDQt493_O9RLeNG7kOik4_kr2LL1HuxuxjOgXlr34Pk9rMF9WJygX17l3qqlRRESeNF3HdWocci7gSjEfajI2U_01Zr5wm8xvmpUKItOL5p53fod5-3fReh6RLHSIK46jQ296Kw2TTCDaByd4Nfwe3w2G52n_ayF1HiHqE0dzSuqCmlUJYWtCqxwjpXQLuOZ0Y5KR4QljnBueSasIsQ5yVyhA2IZrix9A9t1U9u3gJTDlday0JYWzBgnhNF-DfPCTysfBCfwacOB0vRA5GEexlUZAxIsy9mom47p2ZXA0UB83eFvPEy2HzgzkPRMSeBgw9qyl81VKXIuaQBuS-BwuOuFKmRKVG2b9aqk_p0ImYkE0CMUgkvBQyPv4yQypni5kO8ePtwhPD2f_ZiUk2_T7wfwrEtThTqZ97DdLtf2AzwxN-18tfwYv_M7Z-b7qw
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=A+Software+Implementation+of+the+IEEE+754R+Decimal+Floating-Point+Arithmetic+Using+the+Binary+Encoding+Format&rft.jtitle=IEEE+transactions+on+computers&rft.au=Cornea%2C+M&rft.au=Harrison%2C+J&rft.au=Anderson%2C+C&rft.au=Tang%2C+P&rft.date=2009-02-01&rft.issn=0018-9340&rft.volume=58&rft.issue=2&rft.spage=148&rft.epage=162&rft_id=info:doi/10.1109%2FTC.2008.209&rft.externalDBID=NO_FULL_TEXT
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=0018-9340&client=summon
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=0018-9340&client=summon
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=0018-9340&client=summon