दशमलव64 फ़्लोटिंग-पॉइंट प्रारूप: Difference between revisions

From Vigyanwiki
(Created page with "{{lowercase}} {{Use dmy dates|date=July 2020|cs1-dates=y}} {{floating-point}} कम्प्यूटिंग में, दशमलव 64 एक दशमलव...")
 
No edit summary
 
(8 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{lowercase}}
कम्प्यूटिंग में, '''दशमलव 64''' '''दशमलव फ़्लोटिंग-पॉइंट कंप्यूटर क्रमांकन प्रारूप''' है जो कंप्यूटर मेमोरी में 8 बाइट्स (64 बिट्स) रखता है। यह उन अनुप्रयोगों के लिए है जहां वित्तीय और कर गणना जैसे दशमलव पूर्णांक का अनुकरण करना आवश्यक है।
{{Use dmy dates|date=July 2020|cs1-dates=y}}
{{floating-point}}
[[ कम्प्यूटिंग ]] में, दशमलव 64 एक [[दशमलव फ़्लोटिंग-पॉइंट]] [[कंप्यूटर क्रमांकन प्रारूप]] है जो कंप्यूटर मेमोरी में 8 बाइट्स (64 बिट्स) रखता है।
यह उन अनुप्रयोगों के लिए है जहां दशमलव पूर्णांक का सटीक अनुकरण करना आवश्यक है, जैसे कि वित्तीय और कर गणना।


दशमलव64 [[महत्व]] के 16 [[दशमलव अंक]]ों और −383 से +384 की घातांक सीमा का समर्थन करता है, यानी। {{gaps|±0.000|000|000|000|000|e=-383}} को {{gaps|±9.999|999|999|999|999|e=384}}. (समान रूप से, {{gaps|±0|000|000|000|000|000|e=-398}} को {{gaps|±9|999|999|999|999|999|e=369}}.) इसके विपरीत, संबंधित बाइनरी प्रारूप, जो सबसे अधिक इस्तेमाल किया जाने वाला प्रकार है, की अनुमानित सीमा होती है {{gaps|±0.000|000|000|000|001|e=-308}} को {{gaps|±1.797|693|134|862|315|e=308}}. क्योंकि महत्व सामान्यीकृत नहीं है, 16 से कम [[महत्वपूर्ण अंक]]ों वाले अधिकांश मूल्यों में कई संभावित प्रतिनिधित्व होते हैं; {{gaps|1 × 10<sup>2</sup>|{{=}}|0.1 × 10<sup>3</sup>|{{=}}|0.01 × 10<sup>4</sup>}}, आदि। शून्य में 768 संभावित प्रतिनिधित्व हैं (1536 यदि दोनों हस्ताक्षरित शून्य शामिल हैं)।
दशमलव64 महत्वपूर्ण के 16 [[दशमलव अंक]] और −383 से +384 की घातांक सीमा का समर्थन करता है, अर्थात {{gaps|±0.000|000|000|000|000|e=-383}} से {{gaps|±9.999|999|999|999|999|e=384}}(सामान्यतः,{{gaps|±0|000|000|000|000|000|e=-398}} से {{gaps|±9|999|999|999|999|999|e=369}}) इसके विपरीत, संबंधित बाइनरी प्रारूप, जो सबसे अधिक उपयोग किया जाने वाला प्रकार है, इस प्रकार जिसकी अनुमानित सीमा {{gaps|±0.000|000|000|000|001|e=-308}} से {{gaps|±1.797|693|134|862|315|e=308}} है क्योंकि महत्वपूर्ण सामान्यीकृत नहीं है, 16 से कम महत्वपूर्ण अंक वाले अधिकांश मूल्यों में कई संभावित प्रतिनिधित्व होते हैं; {{gaps|1 × 10<sup>2</sup>|{{=}}|0.1 × 10<sup>3</sup>|{{=}}|0.01 × 10<sup>4</sup>}}, आदि। शून्य में 768 संभावित प्रतिनिधित्व हैं (1536 यदि दोनों हस्ताक्षरित शून्य सम्मिलित हैं)।


डेसीमल64 फ़्लोटिंग पॉइंट एक अपेक्षाकृत नया दशमलव फ़्लोटिंग-पॉइंट प्रारूप है, जिसे औपचारिक रूप से [[आईईईई 754-2008]] में पेश किया गया है।<ref name="IEEE-754_2008">{{cite book |title=फ़्लोटिंग-पॉइंट अंकगणित के लिए आईईईई मानक|author=IEEE Computer Society |date=2008-08-29 |publisher=[[IEEE]] |id=IEEE Std 754-2008 |doi=10.1109/IEEESTD.2008.4610935 |ref=CITEREFIEEE_7542008 |isbn=978-0-7381-5753-5 |url=http://ieeexplore.ieee.org/servlet/opac?punumber=4610933 |access-date=2016-02-08}}</ref> [[आईईईई 754]] के साथ-साथ आईएसओ/आईईसी/आईईईई 60559:2011 के साथ।<ref name="ISO-60559_2011">{{cite journal |title=आईएसओ/आईईसी/आईईईई 60559:2011|url=http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=57469 |date=2011 |access-date=2016-02-08}}</ref>
दशमलव64 फ़्लोटिंग पॉइंट एक अपेक्षाकृत नया दशमलव फ़्लोटिंग-पॉइंट प्रारूप है, जिसे औपचारिक रूप से आईईईई 754-2008 संस्करण <ref name="IEEE-754_2008">{{cite book |title=फ़्लोटिंग-पॉइंट अंकगणित के लिए आईईईई मानक|author=IEEE Computer Society |date=2008-08-29 |publisher=[[IEEE]] |id=IEEE Std 754-2008 |doi=10.1109/IEEESTD.2008.4610935 |ref=CITEREFIEEE_7542008 |isbn=978-0-7381-5753-5 |url=http://ieeexplore.ieee.org/servlet/opac?punumber=4610933 |access-date=2016-02-08}}</ref> आईईईई 754 के साथ-साथ आईएसओ/आईईसी/आईईईई 60559:2011 में प्रस्तुत किया गया है।<ref name="ISO-60559_2011">{{cite journal |title=आईएसओ/आईईसी/आईईईई 60559:2011|url=http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=57469 |date=2011 |access-date=2016-02-08}}</ref>


== दशमलव64 मानों का निरूपण ==
== दशमलव64 मानों का निरूपण ==
Line 13: Line 9:
{| class="wikitable"
{| class="wikitable"
|-
|-
! Sign !! Combination !! Exponent continuation !! Significand continuation
! संकेत !! संयोजन !! घातांक निरंतरता !! महत्वपूर्ण निरंतरता
|-
|-
! 1 bit !! 5 bits !! 8 bits !! 50 bits
! 1 bit !! 5 bits !! 8 bits !! 50 bits
Line 21: Line 17:
आईईईई 754 दशमलव64 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है। मानक यह निर्दिष्ट नहीं करता है कि यह कैसे दर्शाया जाए कि किस प्रतिनिधित्व का उपयोग किया जाता है, उदाहरण के लिए ऐसी स्थिति में जहां दशमलव 64 मान सिस्टम के बीच संप्रेषित होते हैं:
आईईईई 754 दशमलव64 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है। मानक यह निर्दिष्ट नहीं करता है कि यह कैसे दर्शाया जाए कि किस प्रतिनिधित्व का उपयोग किया जाता है, उदाहरण के लिए ऐसी स्थिति में जहां दशमलव 64 मान सिस्टम के बीच संप्रेषित होते हैं:


* #बाइनरी पूर्णांक महत्व क्षेत्र में, 16-अंकीय महत्व को बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर बाइनरी कोडित सकारात्मक पूर्णांक के रूप में दर्शाया जाता है।
* बाइनरी पूर्णांक महत्वपूर्ण क्षेत्र में, 16-अंकीय महत्वपूर्ण को बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर बाइनरी कोडित धनात्मक पूर्णांक के रूप में दर्शाया जाता है।
* # सघन रूप से पैक किए गए दशमलव महत्व क्षेत्र में, 16-अंकीय महत्व को दशमलव कोडित सकारात्मक पूर्णांक के रूप में दर्शाया जाता है, जो सघन रूप से पैक किए गए दशमलव (डीपीडी) पर आधारित होता है, जिसमें 3 अंकों के 5 समूह होते हैं (विशेष रूप से एन्कोड किए गए सबसे महत्वपूर्ण अंक को छोड़कर) प्रत्येक को डिकलेट्स (10-बिट अनुक्रम) में दर्शाया जाता है। यह काफी कुशल है, क्योंकि 2<sup>10</sup> = 1024, 0 से 999 तक की सभी संख्याओं को समाहित करने के लिए आवश्यकता से थोड़ा ही अधिक है।
* सघन रूप से पैक किए गए दशमलव महत्वपूर्ण क्षेत्र में, 16-अंकीय महत्वपूर्ण को दशमलव कोडित धनात्मक पूर्णांक के रूप में दर्शाया जाता है, इस प्रकार जो सघन रूप से पैक किए गए दशमलव (डीपीडी) पर आधारित होता है, जिसमें 3 अंकों के 5 समूह होते हैं (विशेष रूप से एन्कोड किए गए सबसे महत्वपूर्ण अंक को छोड़कर) प्रत्येक को डिकलेट्स (10-बिट अनुक्रम) में दर्शाया जाता है। यह अधिक कुशल है, क्योंकि 2<sup>10</sup> = 1024, 0 से 999 तक की सभी संख्याओं को समाहित करने के लिए आवश्यकता से थोड़ा ही अधिक है।


दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: महत्व के 16 अंक और {{math|size=100%|1=3 × 2<sup>8</sup> = 768}}संभावित दशमलव घातांक मान। ([[बाइनरी64]] संख्या में संग्रहीत सभी संभावित दशमलव घातांक मान दशमलव64 में दर्शाए जा सकते हैं, और बाइनरी64 के महत्व के अधिकांश बिट्स को महत्व में दशमलव अंकों की लगभग समान संख्या रखते हुए संग्रहीत किया जाता है।)
दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: महत्वपूर्ण के 16 अंक और {{math|size=100%|1=3 × 2<sup>8</sup> = 768}} संभावित दशमलव घातांक मान ([[बाइनरी64]] संख्या में संग्रहीत सभी संभावित दशमलव घातांक मान दशमलव64 में दर्शाए जा सकते हैं, और इस प्रकार बाइनरी64 के महत्वपूर्ण के अधिकांश बिट्स को महत्वपूर्ण में दशमलव अंकों की लगभग समान संख्या रखते हुए संग्रहीत किया जाता है।)


दोनों मामलों में, महत्व के सबसे महत्वपूर्ण 4 बिट्स (जिनमें वास्तव में केवल 10 संभावित मान हैं) को 5-बिट फ़ील्ड के 32 संभावित मानों में से 30 का उपयोग करने के लिए घातांक के सबसे महत्वपूर्ण 2 बिट्स (3 संभावित मान) के साथ जोड़ा जाता है। शेष संयोजन अनन्तता और [[NaN]]s को कूटबद्ध करते हैं।
दोनों स्थितियों में, महत्वपूर्ण के सबसे महत्वपूर्ण 4 बिट्स (जिनमें वास्तव में केवल 10 संभावित मान हैं) को 5-बिट क्षेत्र के 32 संभावित मानों में से 30 का उपयोग करने के लिए घातांक के सबसे महत्वपूर्ण 2 बिट्स (3 संभावित मान) के साथ जोड़ा जाता है। शेष संयोजन अनन्तता और [[NaN]]s को कूटबद्ध करते हैं।


{| class="wikitable"
{| class="wikitable"
|-
|-
! Combination field !! Exponent Msbits !! Significand Msbits !! Other
! संयोजन क्षेत्र !! प्रतिपादक एमएसबिट्स !! महत्वपूर्ण और एमएसबिट्स !! अन्य
|-
|-
| {{mono|00mmm}} || {{mono|00}} || {{mono|0xxx}} || {{sdash}}
| {{mono|00mmm}} || {{mono|00}} || {{mono|0xxx}} || {{sdash}}
Line 44: Line 40:
| {{mono|1110m}} || {{mono|10}} || {{mono|100x}} || {{sdash}}
| {{mono|1110m}} || {{mono|10}} || {{mono|100x}} || {{sdash}}
|-
|-
| {{mono|11110}} || {{sdash}} || {{sdash}} || ±Infinity
| {{mono|11110}} || {{sdash}} || {{sdash}} || ±अनन्त
|-
|-
| {{mono|11111}} || {{sdash}} || {{sdash}} || {{mono|NaN}}. Sign bit ignored. First bit of exponent continuation field determines if NaN is signaling.
| {{mono|11111}} || {{sdash}} || {{sdash}} || NaN. साइन बिट को नजरअंदाज कर दिया गया। घातांक निरंतरता क्षेत्र का पहला बिट यह निर्धारित करता है कि NaN सिग्नलिंग कर रहा है या नहीं।
|}
|}
इन्फिनिटी और NaN के मामलों में, एन्कोडिंग के अन्य सभी बिट्स को नजरअंदाज कर दिया जाता है। इस प्रकार, किसी सरणी को एक बाइट मान से भरकर इनफिनिटीज़ या NaNs में प्रारंभ करना संभव है।
इन्फिनिटी और NaN के स्थितियों में, एन्कोडिंग के अन्य सभी बिट्स को नजरअंदाज कर दिया जाता है। इस प्रकार, किसी सरणी को बाइट मान से भरकर इनफिनिटीज़ या NaNs में प्रारंभ करना संभव है।


=== बाइनरी पूर्णांक महत्व फ़ील्ड ===
=== बाइनरी पूर्णांक महत्वपूर्ण क्षेत्र ===
यह प्रारूप 0 से लेकर बाइनरी महत्व का उपयोग करता है {{math|size=100%|1=10<sup>16</sup> − 1 = {{gaps|9|999|999|999|999|999}} = 2386F26FC0FFFF<sub>16</sub> = {{gaps|1000|1110000110|1111001001|1011111100|0000111111|1111111111<sub>2</sub>}}.}}
यह प्रारूप 0 से लेकर बाइनरी महत्वपूर्ण का उपयोग करता है {{math|size=100%|1=10<sup>16</sup> − 1 = {{gaps|9|999|999|999|999|999}} = 2386F26FC0FFFF<sub>16</sub> = {{gaps|1000|1110000110|1111001001|1011111100|0000111111|1111111111<sub>2</sub>}}.}}


एन्कोडिंग, पूरी तरह से 64 बिट्स पर संग्रहीत, तक बाइनरी महत्व का प्रतिनिधित्व कर सकती है {{math|size=100%|1=10 × 2<sup>50</sup> − 1 = {{gaps|11|258|999|068|426|239}} = 27FFFFFFFFFFFF<sub>16</sub>,}} लेकिन मान इससे बड़ा है {{math|size=100%|1=10<sup>16</sup> − 1}} अवैध हैं (और इनपुट पर सामने आने पर मानक को उन्हें 0 के रूप में मानने के लिए कार्यान्वयन की आवश्यकता होती है)
एन्कोडिंग, पूरी तरह से 64 बिट्स पर संग्रहीत, {{math|size=100%|1=10 × 2<sup>50</sup> − 1 = {{gaps|11|258|999|068|426|239}} = 27FFFFFFFFFFFF<sub>16</sub>,}} तक बाइनरी महत्व का प्रतिनिधित्व कर सकता है, किन्तु {{math|size=100%|1=10<sup>16</sup> − 1}} से बड़े मान अनुचित हैं (और इनपुट पर सामना होने पर मानक को उन्हें 0 के रूप में मानने के लिए कार्यान्वयन की आवश्यकता होती है) ).


जैसा कि ऊपर वर्णित है, एन्कोडिंग इस पर निर्भर करती है कि क्या सबसे महत्वपूर्ण है {{val|4|u=bits}} का महत्व 0 से 7 (0000) के बीच है<sub>2</sub> 0111 पर<sub>2</sub>), या उच्चतर (1000<sub>2</sub> या 1001<sub>2</sub>).
जैसा कि ऊपर वर्णित है, एन्कोडिंग इस पर निर्भर करती है कि महत्व के सबसे महत्वपूर्ण 4 बिट्स 0 से 7 (0000<sub>2</sub> से 0111<sub>2</sub>), या उच्चतर (1000<sub>2</sub> या 1001<sub>2</sub>) की सीमा में हैं।


यदि साइन बिट के बाद 2 00, 01, या 10 हैं, तो घातांक फ़ील्ड में शामिल हैं {{val|10|u=bits}} साइन बिट का अनुसरण करते हुए, और महत्व शेष है {{val|53|u=bits}}, एक अंतर्निहित अग्रणी के साथ {{val|0|u=bit}}:
यदि साइन बिट के बाद के 2 "00", "01" या "10" हैं, तो घातांक क्षेत्र में साइन बिट के बाद के {{val|10|u=bits}} होते हैं, और महत्व शेष {{val|53|u=bits}} होता है, जिसमें अंतर्निहित {{val|0|u=bit}} होता है :<syntaxhighlight lang="abl">
s 00eeeeeeee  (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                                   
s 01eeeeeeee  (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                               
s 10eeeeeeee  (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                 


एस 00ईईईईईईई (0)टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी
                     
s 01eeeeeeee (0)tttt tttttttttttttttttttttttttttttttttttttt
                                                                                                                                                                                                                                                                                                                                                                                           
एस 10ईईईईईईई (0)टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी
</syntaxhighlight>इसमें [[असामान्य संख्याएँ]] सम्मिलित हैं जहाँ अग्रणी महत्वपूर्ण अंक 0 है।  
इसमें [[असामान्य संख्याएँ]] शामिल हैं जहाँ अग्रणी महत्व अंक 0 है।


यदि {{val|2|u=bits}} साइन बिट 11 होने के बाद, 10-बिट एक्सपोनेंट फ़ील्ड को स्थानांतरित कर दिया जाता है {{val|2|u=bits}} दाईं ओर (साइन बिट और उसके बाद 11 बिट दोनों के बाद), और दर्शाया गया महत्व शेष में है {{val|51|u=bits}}. इस मामले में वास्तविक महत्व के अधिकांश बिट्स के लिए एक अंतर्निहित (अर्थात, संग्रहीत नहीं) अग्रणी 3-बिट अनुक्रम 100 है (महत्व के शेष निचले बिट्स ttt...ttt में, सभी संभावित मानों का उपयोग नहीं किया जाता है)।
यदि साइन बिट के बाद के {{val|2|u=bits}} "11" हैं, तो 10-बिट एक्सपोनेंट क्षेत्र को {{val|2|u=bits}} दाईं ओर स्थानांतरित कर दिया जाता है (साइन बिट और उसके बाद "11" बिट्स दोनों के बाद), और दर्शाया गया महत्व शेष में है इस प्रकार {{val|51|u=bits}} इस स्थिति में वास्तविक महत्व के अधिकांश बिट्स के लिए एक अंतर्निहित (अर्थात संग्रहीत नहीं) अग्रणी 3-बिट अनुक्रम "100" है (महत्व के शेष निचले बिट्स ttt...ttt में, सभी संभावित मान नहीं हैं) उपयोग किया गया)।<syntaxhighlight>
s 1100eeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                         
s 1101eeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                         
s 1110eeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                             
                                                                                                                           
                                                                                                                                                         
                                                           
                                                                                                                     
                                                                                                                                                                                                                                   
</syntaxhighlight>साइन बिट के बाद 2-बिट अनुक्रम 11 इंगित करता है कि महत्वपूर्ण के लिए अंतर्निहित 3-बिट उपसर्ग 100 है। बाइनरी प्रारूपों के लिए सामान्य मानों के महत्वपूर्ण में अंतर्निहित 1-बिट उपसर्ग 1 की तुलना करें। साइन बिट के बाद 2-बिट अनुक्रम 00, 01, या 10 घातांक क्षेत्र का भाग हैं।


एस 1100ईईईईईईई (100)टी टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी
महत्व क्षेत्र के अग्रणी बिट्स सबसे महत्वपूर्ण दशमलव अंक को एन्कोड नहीं करते हैं; वह बस एक बड़ी शुद्ध-बाइनरी संख्या का भाग हैं। उदाहरण के लिए, {{gaps|8|000|000|000|000|000}} का महत्व बाइनरी {{gaps|0111|0001101011|1111010100|1001100011|0100000000|0000000000}}<sub>2</sub> के रूप में एन्कोड किया गया है, इस प्रकार जिसमें अग्रणी 4 बिट एन्कोडिंग 7 है; पहला महत्व जिसके लिए 54वें बिट की आवश्यकता होती है वह {{math|size=100%|1=2<sup>53</sup> = {{gaps|9|007|199|254|740|992}}.}} है। उच्चतम वैध महत्व {{gaps|9|999|999|999|999|999}} है जिसका बाइनरी एन्कोडिंग {{gaps|(100)0|1110000110|1111001001|1011111100|0000111111|1111111111}}<sub>2</sub> है ( 3 सबसे महत्वपूर्ण बिट्स (100) संग्रहीत नहीं हैं किन्तु अंतर्निहित हैं जैसा कि ऊपर दिखाया गया है; और अगला बिट है वैध एन्कोडिंग में सदैव शून्य)
एस 1101ईईईईईईईई (100)टी टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी
एस 1110ईईईईईईई (100)टी टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी


साइन बिट के बाद 2-बिट अनुक्रम 11 इंगित करता है कि महत्व के लिए एक अंतर्निहित 3-बिट उपसर्ग 100 है। बाइनरी प्रारूपों के लिए सामान्य मानों के महत्व में एक अंतर्निहित 1-बिट उपसर्ग 1 की तुलना करें। साइन बिट के बाद 2-बिट अनुक्रम 00, 01, या 10 घातांक फ़ील्ड का हिस्सा हैं।
उपरोक्त स्थितियों में, दर्शाया गया मान है


महत्व क्षेत्र के अग्रणी बिट्स सबसे महत्वपूर्ण दशमलव अंक को एन्कोड नहीं करते हैं; वे बस एक बड़ी शुद्ध-बाइनरी संख्या का हिस्सा हैं। उदाहरण के लिए, का एक महत्व {{gaps|8|000|000|000|000|000}} को बाइनरी के रूप में एन्कोड किया गया है {{gaps|0111|0001101011|1111010100|1001100011|0100000000|0000000000}}<sub>2</sub>, अग्रणी के साथ {{val|4|u=bits}} एन्कोडिंग 7; पहला महत्व जिसके लिए 54वें बिट की आवश्यकता है वह है {{math|size=100%|1=2<sup>53</sup> = {{gaps|9|007|199|254|740|992}}.}} उच्चतम वैध सार्थक है {{gaps|9|999|999|999|999|999}}जिसकी बाइनरी एन्कोडिंग है
{{math|1=(−1)<sup>sign</sup> × 10<sup>exponent−398</sup> × significand}}
{{gaps|(100)0|1110000110|1111001001|1011111100|0000111111|1111111111}}<sub>2</sub> (3 सबसे महत्वपूर्ण बिट्स (100) संग्रहीत नहीं हैं लेकिन ऊपर दिखाए गए अनुसार अंतर्निहित हैं; और वैध एन्कोडिंग में अगला बिट हमेशा शून्य होता है)।


उपरोक्त मामलों में, दर्शाया गया मान है
यदि साइन बिट के बाद के चार बिट 1111 हैं तो मान अनंत या NaN है, जैसा कि ऊपर वर्णित है:<syntaxhighlight>
s 11110 xx...x    ±infinity                                                                                         
s 11111 0x...x    a quiet NaN                                                                                                                                                                                                                                                                                                                                             
s 11111 1x...x    a signalling NaN                                                                           
                                                                                                                                                         
</syntaxhighlight>


:  {{math|1=(−1)<sup>sign</sup> × 10<sup>exponent−398</sup> × significand}} <!-- Remember, significand is defined as an integer: 0 <= significand < 10^16 -->
=== घनीभूत दशमलव महत्वपूर्ण क्षेत्र ===
यदि साइन बिट के बाद के चार बिट 1111 हैं तो मान अनंत या NaN है, जैसा कि ऊपर वर्णित है:
इस संस्करण में, महत्वपूर्ण को दशमलव अंकों की श्रृंखला के रूप में संग्रहीत किया जाता है। अग्रणी अंक 0 और 9 (3 या 4 बाइनरी बिट्स) के बीच है, और शेष महत्वपूर्ण सघन रूप से पैक दशमलव (डीपीडी) एन्कोडिंग का उपयोग करता है।


s 11110 xx...x ±अनंत
सबसे आगे वाला {{val|2|u=bits}} घातांक और अग्रणी अंक (3 या {{val|4|u=bits}}) महत्वपूर्ण को पांच बिट्स में संयोजित किया जाता है जो साइन बिट का अनुसरण करते हैं।
s 11111 0x...x एक शांत NaN
s 11111 1x...x एक सिग्नलिंग NaN
 
=== घनीभूत दशमलव महत्व फ़ील्ड ===
इस संस्करण में, महत्व को दशमलव अंकों की एक श्रृंखला के रूप में संग्रहीत किया जाता है। अग्रणी अंक 0 और 9 (3 या 4 बाइनरी बिट्स) के बीच है, और शेष महत्व सघन रूप से पैक दशमलव (डीपीडी) एन्कोडिंग का उपयोग करता है।
 
सबसे आगे वाला {{val|2|u=bits}} घातांक और अग्रणी अंक (3 या {{val|4|u=bits}}) महत्व को पांच बिट्स में संयोजित किया जाता है जो साइन बिट का अनुसरण करते हैं।


उसके बाद के आठ बिट्स घातांक निरंतरता क्षेत्र हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं।
उसके बाद के आठ बिट्स घातांक निरंतरता क्षेत्र हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं।


अंतिम {{val|50|u=bits}}महत्वपूर्ण निरंतरता क्षेत्र हैं, जिसमें पांच 10-बिट डिकलेट (कंप्यूटिंग) शामिल हैं।<ref name="Muller_2010">{{cite book |author-last1=Muller |author-first1=Jean-Michel |author-last2=Brisebarre |author-first2=Nicolas |author-last3=de Dinechin |author-first3=Florent |author-last4=Jeannerod |author-first4=Claude-Pierre |author-last5=Lefèvre |author-first5=Vincent |author-last6=Melquiond |author-first6=Guillaume |author-last7=Revol |author-first7=Nathalie|author7-link=Nathalie Revol |author-last8=Stehlé |author-first8=Damien |author-last9=Torres |author-first9=Serge |title=फ़्लोटिंग-पॉइंट अंकगणित की पुस्तिका|year=2010 |publisher=[[Birkhäuser]] |edition=1 |isbn=978-0-8176-4704-9<!-- print --> |doi=10.1007/978-0-8176-4705-6 |lccn=2009939668<!-- |isbn=978-0-8176-4705-6 (online), ISBN 0-8176-4704-X (print) -->|url=https://cds.cern.ch/record/1315760 }}</ref> प्रत्येक डिकलेट तीन दशमलव अंकों को कूटबद्ध करता है<ref name="Muller_2010"/>डीपीडी एन्कोडिंग का उपयोग करना।
अंतिम {{val|50|u=bits}} महत्वपूर्ण निरंतरता क्षेत्र हैं, जिसमें पांच 10-बिट डिकलेट (कंप्यूटिंग) सम्मिलित हैं।<ref name="Muller_2010">{{cite book |author-last1=Muller |author-first1=Jean-Michel |author-last2=Brisebarre |author-first2=Nicolas |author-last3=de Dinechin |author-first3=Florent |author-last4=Jeannerod |author-first4=Claude-Pierre |author-last5=Lefèvre |author-first5=Vincent |author-last6=Melquiond |author-first6=Guillaume |author-last7=Revol |author-first7=Nathalie|author7-link=Nathalie Revol |author-last8=Stehlé |author-first8=Damien |author-last9=Torres |author-first9=Serge |title=फ़्लोटिंग-पॉइंट अंकगणित की पुस्तिका|year=2010 |publisher=[[Birkhäuser]] |edition=1 |isbn=978-0-8176-4704-9<!-- print --> |doi=10.1007/978-0-8176-4705-6 |lccn=2009939668<!-- |isbn=978-0-8176-4705-6 (online), ISBN 0-8176-4704-X (print) -->|url=https://cds.cern.ch/record/1315760 }}</ref> इस प्रकार प्रत्येक डिकलेट तीन दशमलव अंकों को कूटबद्ध करता है <ref name="Muller_2010"/> डीपीडी एन्कोडिंग का उपयोग करता है।
 
यदि साइन बिट के बाद पहले दो बिट 00, 01, या 10 हैं, तो वे घातांक के अग्रणी बिट हैं, और उसके बाद के तीन बिट टीटीटी को अग्रणी दशमलव अंक (0 से 7) के रूप में समझा जाता है:
 
एस 00 टीटीटी (00)ईईईईईईईई (0टीटीटी)[ट्टट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्टट्ट][ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]
एस 01 टीटीटी (01)ईईईईईईईईई (0टीटीटी)[ट्टट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्टट्ट][ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]
एस 10 टीटीटी (10)ईईईईईईईई (0टीटीटी)[ट्टट्टट्टट्ट][ट्टट्टट्टट्ट][ट्टट्टट्टट्ट][ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]
 
यदि साइन बिट के बाद पहले दो बिट्स 11 हैं, तो दूसरे 2-बिट्स घातांक के अग्रणी बिट्स हैं, और अगले बिट टी को प्रमुख दशमलव अंक (8 या 9) बनाने के लिए अंतर्निहित बिट्स 100 के साथ उपसर्ग किया जाता है:
 
एस 1100 टी (00)ईईईईईईईई (100टी)[ट्टट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट]
एस 1101 टी (01)ईईईईईईईई (100टी)[ट्टट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट]
एस 1110 टी (10)ईईईईईईईई (100टी)[ट्टट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट][ट्टट्टट्ट]


साइन बिट के बाद 5-बिट फ़ील्ड के शेष दो संयोजन (11 110 और 11 111) का उपयोग क्रमशः ±अनंत और NaN का प्रतिनिधित्व करने के लिए किया जाता है।
यदि साइन बिट के बाद पहले दो बिट 00, 01, या 10 हैं, तो वह घातांक के अग्रणी बिट हैं, और उसके बाद के तीन बिट टीटीटी को अग्रणी दशमलव अंक (0 से 7) के रूप में समझा जाता है:<syntaxhighlight>
s 00 TTT (00)eeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                                 
s 01 TTT (01)eeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                             
s 10 TTT (10)eeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]   
                                                                                                                   
                                                                                                                                                                                             
                                                                                                                                                             
                                                                                                                                                   
</syntaxhighlight>यदि साइन बिट के बाद पहले दो बिट्स 11 हैं, तो दूसरे 2-बिट्स घातांक के अग्रणी बिट्स हैं, और अगले बिट t को प्रमुख दशमलव अंक (8 या 9) बनाने के लिए अंतर्निहित बिट्स 100 के साथ उपसर्ग किया जाता है:<syntaxhighlight>
s 1100 T (00)eeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                                     
s 1101 T (01)eeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                                       
s 1110 T (10)eeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                                                         
                                                                                                                       
                                                                                                                                 
                                                                                                                                                     
                                                                                                                             
</syntaxhighlight>साइन बिट के बाद 5-बिट क्षेत्र के शेष दो संयोजन (11 110 और 11 111) का उपयोग क्रमशः ±अनंत और NaN का प्रतिनिधित्व करने के लिए किया जाता है।


डिकलेट्स के लिए DPD/3BCD ट्रांसकोडिंग निम्न तालिका द्वारा दी गई है। b9...b0 DPD के बिट्स हैं, और d2...d0 तीन BCD अंक हैं।
डिकलेट्स के लिए DPD/3BCD ट्रांसकोडिंग निम्न तालिका द्वारा दी गई है। b9...b0 DPD के बिट्स हैं, और d2...d0 तीन BCD अंक हैं।
Line 112: Line 117:
{{Densely packed decimal}}
{{Densely packed decimal}}


8 दशमलव मान जिनके सभी अंक 8 या 9 हैं, उनमें से प्रत्येक में चार कोडिंग हैं।
8 दशमलव मान जिनके सभी अंक 8 या 9 हैं, उनमें से प्रत्येक में चार कोडिंग हैं। उपरोक्त तालिका में x चिह्नित बिट्स इनपुट पर ध्यान नहीं देते हैं, किन्तु गणना किए गए परिणामों में सदैव 0 होंगे। ( वह {{math|size=100%|1=8 × 3 = 24}} गैर-मानक एन्कोडिंग {{math|size=100%|1=10<sup>3</sup> = 1000 and 2<sup>10</sup> = 1024.}} बीच के अंतर को भरते हैं)
उपरोक्त तालिका में x चिह्नित बिट्स इनपुट पर ध्यान नहीं देते हैं, लेकिन गणना किए गए परिणामों में हमेशा 0 होंगे।
( वह {{math|size=100%|1=8 × 3 = 24}} गैर-मानक एन्कोडिंग बीच के अंतर को भरते हैं {{math|size=100%|1=10<sup>3</sup> = 1000 and 2<sup>10</sup> = 1024.}})


उपरोक्त मामलों में, दशमलव अंकों के डिकोड किए गए अनुक्रम के वास्तविक महत्व के साथ, दर्शाया गया मान है
उपरोक्त स्थितियों में, दशमलव अंकों के डिकोड किए गए अनुक्रम के वास्तविक महत्वपूर्ण के साथ, दर्शाया गया मान है


:<math>(-1)^\text{signbit}\times 10^{\text{exponentbits}_2-398_{10}}\times \text{truesignificand}_{10}</math>
:<math>(-1)^\text{signbit}\times 10^{\text{exponentbits}_2-398_{10}}\times \text{truesignificand}_{10}</math>
== यह भी देखें ==
== यह भी देखें ==
* आईएसओ/आईईसी 10967, भाषा स्वतंत्र अंकगणित
* ISO/IEC 10967, भाषा स्वतंत्र अंकगणित
* [[आदिम डेटा प्रकार]]
* [[आदिम डेटा प्रकार|मौलिक डेटा प्रकार]]
* [[डी संकेतन (वैज्ञानिक संकेतन)]]
* [[डी संकेतन (वैज्ञानिक संकेतन)|डी नोटेशन (वैज्ञानिक नोटेशन)]]


== संदर्भ ==
== संदर्भ                                       ==
{{reflist}}
{{reflist}}
[[Category: कंप्यूटर अंकगणित]] [[Category: डेटा के प्रकार]] [[Category: फ़्लोटिंग पॉइंट प्रकार]]


[[Category: Machine Translated Page]]
[[Category:CS1 errors]]
[[Category:Created On 25/07/2023]]
[[Category:Created On 25/07/2023]]
[[Category:Machine Translated Page]]
[[Category:Pages with script errors]]
[[Category:Pages with syntax highlighting errors]]
[[Category:Templates Vigyan Ready]]
[[Category:कंप्यूटर अंकगणित]]
[[Category:डेटा के प्रकार]]
[[Category:फ़्लोटिंग पॉइंट प्रकार]]

Latest revision as of 15:31, 8 September 2023

कम्प्यूटिंग में, दशमलव 64 दशमलव फ़्लोटिंग-पॉइंट कंप्यूटर क्रमांकन प्रारूप है जो कंप्यूटर मेमोरी में 8 बाइट्स (64 बिट्स) रखता है। यह उन अनुप्रयोगों के लिए है जहां वित्तीय और कर गणना जैसे दशमलव पूर्णांक का अनुकरण करना आवश्यक है।

दशमलव64 महत्वपूर्ण के 16 दशमलव अंक और −383 से +384 की घातांक सीमा का समर्थन करता है, अर्थात ±0.000000000000000×10^−383 से ±9.999999999999999×10^384। (सामान्यतः,±0000000000000000×10^−398 से ±9999999999999999×10^369।) इसके विपरीत, संबंधित बाइनरी प्रारूप, जो सबसे अधिक उपयोग किया जाने वाला प्रकार है, इस प्रकार जिसकी अनुमानित सीमा ±0.000000000000001×10^−308 से ±1.797693134862315×10^308 है क्योंकि महत्वपूर्ण सामान्यीकृत नहीं है, 16 से कम महत्वपूर्ण अंक वाले अधिकांश मूल्यों में कई संभावित प्रतिनिधित्व होते हैं; 1 × 102=0.1 × 103=0.01 × 104, आदि। शून्य में 768 संभावित प्रतिनिधित्व हैं (1536 यदि दोनों हस्ताक्षरित शून्य सम्मिलित हैं)।

दशमलव64 फ़्लोटिंग पॉइंट एक अपेक्षाकृत नया दशमलव फ़्लोटिंग-पॉइंट प्रारूप है, जिसे औपचारिक रूप से आईईईई 754-2008 संस्करण [1] आईईईई 754 के साथ-साथ आईएसओ/आईईसी/आईईईई 60559:2011 में प्रस्तुत किया गया है।[2]

दशमलव64 मानों का निरूपण

संकेत संयोजन घातांक निरंतरता महत्वपूर्ण निरंतरता
1 bit 5 bits 8 bits 50 bits
s mmmmm xxxxxxxx cccccccccccccccccccccccccccccccccccccccccccccccccc

आईईईई 754 दशमलव64 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है। मानक यह निर्दिष्ट नहीं करता है कि यह कैसे दर्शाया जाए कि किस प्रतिनिधित्व का उपयोग किया जाता है, उदाहरण के लिए ऐसी स्थिति में जहां दशमलव 64 मान सिस्टम के बीच संप्रेषित होते हैं:

  • बाइनरी पूर्णांक महत्वपूर्ण क्षेत्र में, 16-अंकीय महत्वपूर्ण को बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर बाइनरी कोडित धनात्मक पूर्णांक के रूप में दर्शाया जाता है।
  • सघन रूप से पैक किए गए दशमलव महत्वपूर्ण क्षेत्र में, 16-अंकीय महत्वपूर्ण को दशमलव कोडित धनात्मक पूर्णांक के रूप में दर्शाया जाता है, इस प्रकार जो सघन रूप से पैक किए गए दशमलव (डीपीडी) पर आधारित होता है, जिसमें 3 अंकों के 5 समूह होते हैं (विशेष रूप से एन्कोड किए गए सबसे महत्वपूर्ण अंक को छोड़कर) प्रत्येक को डिकलेट्स (10-बिट अनुक्रम) में दर्शाया जाता है। यह अधिक कुशल है, क्योंकि 210 = 1024, 0 से 999 तक की सभी संख्याओं को समाहित करने के लिए आवश्यकता से थोड़ा ही अधिक है।

दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: महत्वपूर्ण के 16 अंक और 3 × 28 = 768 संभावित दशमलव घातांक मान (बाइनरी64 संख्या में संग्रहीत सभी संभावित दशमलव घातांक मान दशमलव64 में दर्शाए जा सकते हैं, और इस प्रकार बाइनरी64 के महत्वपूर्ण के अधिकांश बिट्स को महत्वपूर्ण में दशमलव अंकों की लगभग समान संख्या रखते हुए संग्रहीत किया जाता है।)

दोनों स्थितियों में, महत्वपूर्ण के सबसे महत्वपूर्ण 4 बिट्स (जिनमें वास्तव में केवल 10 संभावित मान हैं) को 5-बिट क्षेत्र के 32 संभावित मानों में से 30 का उपयोग करने के लिए घातांक के सबसे महत्वपूर्ण 2 बिट्स (3 संभावित मान) के साथ जोड़ा जाता है। शेष संयोजन अनन्तता और NaNs को कूटबद्ध करते हैं।

संयोजन क्षेत्र प्रतिपादक एमएसबिट्स महत्वपूर्ण और एमएसबिट्स अन्य
00mmm 00 0xxx
01mmm 01 0xxx
10mmm 10 0xxx
1100m 00 100x
1101m 01 100x
1110m 10 100x
11110 ±अनन्त
11111 NaN. साइन बिट को नजरअंदाज कर दिया गया। घातांक निरंतरता क्षेत्र का पहला बिट यह निर्धारित करता है कि NaN सिग्नलिंग कर रहा है या नहीं।

इन्फिनिटी और NaN के स्थितियों में, एन्कोडिंग के अन्य सभी बिट्स को नजरअंदाज कर दिया जाता है। इस प्रकार, किसी सरणी को बाइट मान से भरकर इनफिनिटीज़ या NaNs में प्रारंभ करना संभव है।

बाइनरी पूर्णांक महत्वपूर्ण क्षेत्र

यह प्रारूप 0 से लेकर बाइनरी महत्वपूर्ण का उपयोग करता है 1016 − 1 = 9999999999999999 = 2386F26FC0FFFF16 = 1000111000011011110010011011111100000011111111111111112.

एन्कोडिंग, पूरी तरह से 64 बिट्स पर संग्रहीत, 10 × 250 − 1 = 11258999068426239 = 27FFFFFFFFFFFF16, तक बाइनरी महत्व का प्रतिनिधित्व कर सकता है, किन्तु 1016 − 1 से बड़े मान अनुचित हैं (और इनपुट पर सामना होने पर मानक को उन्हें 0 के रूप में मानने के लिए कार्यान्वयन की आवश्यकता होती है) ).

जैसा कि ऊपर वर्णित है, एन्कोडिंग इस पर निर्भर करती है कि महत्व के सबसे महत्वपूर्ण 4 बिट्स 0 से 7 (00002 से 01112), या उच्चतर (10002 या 10012) की सीमा में हैं।

यदि साइन बिट के बाद के 2 "00", "01" या "10" हैं, तो घातांक क्षेत्र में साइन बिट के बाद के 10 bits होते हैं, और महत्व शेष 53 bits होता है, जिसमें अंतर्निहित 0 bit होता है :

s 00eeeeeeee   (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                                     
s 01eeeeeeee   (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                                
s 10eeeeeeee   (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt

इसमें असामान्य संख्याएँ सम्मिलित हैं जहाँ अग्रणी महत्वपूर्ण अंक 0 है। यदि साइन बिट के बाद के 2 bits "11" हैं, तो 10-बिट एक्सपोनेंट क्षेत्र को 2 bits दाईं ओर स्थानांतरित कर दिया जाता है (साइन बिट और उसके बाद "11" बिट्स दोनों के बाद), और दर्शाया गया महत्व शेष में है इस प्रकार 51 bits इस स्थिति में वास्तविक महत्व के अधिकांश बिट्स के लिए एक अंतर्निहित (अर्थात संग्रहीत नहीं) अग्रणी 3-बिट अनुक्रम "100" है (महत्व के शेष निचले बिट्स ttt...ttt में, सभी संभावित मान नहीं हैं) उपयोग किया गया)।

s 1100eeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                          
s 1101eeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt                                          
s 1110eeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt

साइन बिट के बाद 2-बिट अनुक्रम 11 इंगित करता है कि महत्वपूर्ण के लिए अंतर्निहित 3-बिट उपसर्ग 100 है। बाइनरी प्रारूपों के लिए सामान्य मानों के महत्वपूर्ण में अंतर्निहित 1-बिट उपसर्ग 1 की तुलना करें। साइन बिट के बाद 2-बिट अनुक्रम 00, 01, या 10 घातांक क्षेत्र का भाग हैं।

महत्व क्षेत्र के अग्रणी बिट्स सबसे महत्वपूर्ण दशमलव अंक को एन्कोड नहीं करते हैं; वह बस एक बड़ी शुद्ध-बाइनरी संख्या का भाग हैं। उदाहरण के लिए, 8000000000000000 का महत्व बाइनरी 0111000110101111110101001001100011010000000000000000002 के रूप में एन्कोड किया गया है, इस प्रकार जिसमें अग्रणी 4 बिट एन्कोडिंग 7 है; पहला महत्व जिसके लिए 54वें बिट की आवश्यकता होती है वह 253 = 9007199254740992. है। उच्चतम वैध महत्व 9999999999999999 है जिसका बाइनरी एन्कोडिंग (100)0111000011011110010011011111100000011111111111111112 है ( 3 सबसे महत्वपूर्ण बिट्स (100) संग्रहीत नहीं हैं किन्तु अंतर्निहित हैं जैसा कि ऊपर दिखाया गया है; और अगला बिट है वैध एन्कोडिंग में सदैव शून्य)।

उपरोक्त स्थितियों में, दर्शाया गया मान है

(−1)sign × 10exponent−398 × significand

यदि साइन बिट के बाद के चार बिट 1111 हैं तो मान अनंत या NaN है, जैसा कि ऊपर वर्णित है:

s 11110 xx...x    ±infinity                                                                                          
s 11111 0x...x    a quiet NaN                                                                                                                                                                                                                                                                                                                                              
s 11111 1x...x    a signalling NaN

घनीभूत दशमलव महत्वपूर्ण क्षेत्र

इस संस्करण में, महत्वपूर्ण को दशमलव अंकों की श्रृंखला के रूप में संग्रहीत किया जाता है। अग्रणी अंक 0 और 9 (3 या 4 बाइनरी बिट्स) के बीच है, और शेष महत्वपूर्ण सघन रूप से पैक दशमलव (डीपीडी) एन्कोडिंग का उपयोग करता है।

सबसे आगे वाला 2 bits घातांक और अग्रणी अंक (3 या 4 bits) महत्वपूर्ण को पांच बिट्स में संयोजित किया जाता है जो साइन बिट का अनुसरण करते हैं।

उसके बाद के आठ बिट्स घातांक निरंतरता क्षेत्र हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं।

अंतिम 50 bits महत्वपूर्ण निरंतरता क्षेत्र हैं, जिसमें पांच 10-बिट डिकलेट (कंप्यूटिंग) सम्मिलित हैं।[3] इस प्रकार प्रत्येक डिकलेट तीन दशमलव अंकों को कूटबद्ध करता है [3] डीपीडी एन्कोडिंग का उपयोग करता है।

यदि साइन बिट के बाद पहले दो बिट 00, 01, या 10 हैं, तो वह घातांक के अग्रणी बिट हैं, और उसके बाद के तीन बिट टीटीटी को अग्रणी दशमलव अंक (0 से 7) के रूप में समझा जाता है:

s 00 TTT (00)eeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                                   
s 01 TTT (01)eeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                              
s 10 TTT (10)eeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]

यदि साइन बिट के बाद पहले दो बिट्स 11 हैं, तो दूसरे 2-बिट्स घातांक के अग्रणी बिट्स हैं, और अगले बिट t को प्रमुख दशमलव अंक (8 या 9) बनाने के लिए अंतर्निहित बिट्स 100 के साथ उपसर्ग किया जाता है:

s 1100 T (00)eeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                                       
s 1101 T (01)eeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]                                        
s 1110 T (10)eeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]

साइन बिट के बाद 5-बिट क्षेत्र के शेष दो संयोजन (11 110 और 11 111) का उपयोग क्रमशः ±अनंत और NaN का प्रतिनिधित्व करने के लिए किया जाता है।

डिकलेट्स के लिए DPD/3BCD ट्रांसकोडिंग निम्न तालिका द्वारा दी गई है। b9...b0 DPD के बिट्स हैं, और d2...d0 तीन BCD अंक हैं।

Densely packed decimal encoding rules[4]
DPD encoded value Decimal digits
Code space (1024 states) b9 b8 b7 b6 b5 b4 b3 b2 b1 b0 d2 d1 d0 Values encoded Description Occurrences (1000 states)
50.0% (512 states) a b c d e f 0 g h i 0abc 0def 0ghi (0–7) (0–7) (0–7) Three small digits 51.2% (512 states)
37.5% (384 states) a b c d e f 1 0 0 i 0abc 0def 100i (0–7) (0–7) (8–9) Two small digits,
one large
38.4% (384 states)
a b c g h f 1 0 1 i 0abc 100f 0ghi (0–7) (8–9) (0–7)
g h c d e f 1 1 0 i 100c 0def 0ghi (8–9) (0–7) (0–7)
9.375% (96 states) g h c 0 0 f 1 1 1 i 100c 100f 0ghi (8–9) (8–9) (0–7) One small digit,
two large
9.6% (96 states)
d e c 0 1 f 1 1 1 i 100c 0def 100i (8–9) (0–7) (8–9)
a b c 1 0 f 1 1 1 i 0abc 100f 100i (0–7) (8–9) (8–9)
3.125% (32 states, 8 used) x x c 1 1 f 1 1 1 i 100c 100f 100i (8–9) (8–9) (8–9) Three large digits, bits b9 and b8 are don't care 0.8% (8 states)

8 दशमलव मान जिनके सभी अंक 8 या 9 हैं, उनमें से प्रत्येक में चार कोडिंग हैं। उपरोक्त तालिका में x चिह्नित बिट्स इनपुट पर ध्यान नहीं देते हैं, किन्तु गणना किए गए परिणामों में सदैव 0 होंगे। ( वह 8 × 3 = 24 गैर-मानक एन्कोडिंग 103 = 1000 and 210 = 1024. बीच के अंतर को भरते हैं)

उपरोक्त स्थितियों में, दशमलव अंकों के डिकोड किए गए अनुक्रम के वास्तविक महत्वपूर्ण के साथ, दर्शाया गया मान है

यह भी देखें

संदर्भ

  1. IEEE Computer Society (2008-08-29). फ़्लोटिंग-पॉइंट अंकगणित के लिए आईईईई मानक. IEEE. doi:10.1109/IEEESTD.2008.4610935. ISBN 978-0-7381-5753-5. IEEE Std 754-2008. Retrieved 2016-02-08.
  2. "आईएसओ/आईईसी/आईईईई 60559:2011". 2011. Retrieved 2016-02-08. {{cite journal}}: Cite journal requires |journal= (help)
  3. 3.0 3.1 Muller, Jean-Michel; Brisebarre, Nicolas; de Dinechin, Florent; Jeannerod, Claude-Pierre; Lefèvre, Vincent; Melquiond, Guillaume; Revol, Nathalie; Stehlé, Damien; Torres, Serge (2010). फ़्लोटिंग-पॉइंट अंकगणित की पुस्तिका (1 ed.). Birkhäuser. doi:10.1007/978-0-8176-4705-6. ISBN 978-0-8176-4704-9. LCCN 2009939668.
  4. Cowlishaw, Michael Frederic (2007-02-13) [2000-10-03]. "A Summary of Densely Packed Decimal encoding". IBM. Archived from the original on 2015-09-24. Retrieved 2016-02-07.