दशमलव128 फ़्लोटिंग-पॉइंट प्रारूप: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
{{floating-point}} | {{floating-point}} | ||
दशमलव128 [[दशमलव फ़्लोटिंग-पॉइंट]] [[कंप्यूटर नंबर प्रारूप]] है जो [[ स्मृति | | दशमलव128 [[दशमलव फ़्लोटिंग-पॉइंट]] [[कंप्यूटर नंबर प्रारूप]] है जो [[ स्मृति |कंप्यूटर मेमोरी]] में 128 बिट का अवलोकन करता है। इसे आधिकारिक रूप से [[आईईईई 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}}</ref> इसका उद्देश्य वित्तीय और कर गणनाओं जैसे कार्यों में दशमलव गोलाई को सटीकता से अनुकरण करने की आवश्यकता होने पर है। {{cite web |url=http://speleotrove.com/decimal/decifaq1.html |title=दशमलव अंकगणित अक्सर पूछे जाने वाले प्रश्न - भाग 1 - सामान्य प्रश्न|last=Cowlishaw |first=Mike |date=2007 |website=speleotrove.com |publisher=IBM Corporation |access-date=2022-07-29}} | ||
दशमलव128 [[महत्व]] के 34 [[दशमलव अंक]] | दशमलव128 [[महत्व]] के 34 [[दशमलव अंक|दशमलव अंकों]] औरका समर्थन करता है और घटाव का सीमा -6143 से +6144 तक है, अर्थात {{gaps|±0.000|000|000|000|000|000|000|000|000|000|000|e=-6143}} से {{gaps|±9.999|999|999|999|999|999|999|999|999|999|999|e=6144}}तक। क्योंकि महत्व सामान्यीकृत नहीं होता है, तो 34 से कम [[महत्वपूर्ण अंक|महत्वपूर्ण अंकों]] वाले अधिकांश मूल्यों में कई संभावित प्रतिनिधित्व होते हैं; {{gaps|1 × 10<sup>2</sup>|{{=}}|0.1 × 10<sup>3</sup>|{{=}}|0.01 × 10<sup>4</sup>}}, आदि। शून्य के 12288 संभावित प्रतिनिधित्व होते हैं ([[नकारात्मक शून्य]] सहित 24576)। | ||
== दशमलव128 मानों का निरूपण == | == दशमलव128 मानों का निरूपण == | ||
Line 19: | Line 19: | ||
| {{mono|s}} || {{mono|mmmmmmmmmmmmmmmmm}} || {{mono|cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc}} | | {{mono|s}} || {{mono|mmmmmmmmmmmmmmmmm}} || {{mono|cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc}} | ||
|} | |} | ||
[[IEEE 754]] दशमलव128 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है। मानक यह निर्दिष्ट नहीं करता है कि यह कैसे | [[IEEE 754]] दशमलव128 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है। मानक यह निर्दिष्ट नहीं करता है कि यह कैसे संकेत किया जाए कि किस प्रतिनिधित्व का उपयोग किया जाता है, उदाहरण के लिए ऐसी स्थिति में जहां सिस्टम के बीच दशमलव128 मान संचारित होते हैं। | ||
बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर प्रतिनिधित्व विधि में, महत्व को बाइनरी कोडित सकारात्मक पूर्णांक के रूप में दर्शाया जाता है। | बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर प्रतिनिधित्व विधि में, महत्व को बाइनरी कोडित सकारात्मक पूर्णांक के रूप में दर्शाया जाता है। | ||
Line 27: | Line 27: | ||
दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: महत्व के 34 अंक और {{math|size=100%|1=3 × 2<sup>12</sup> = {{val|12288}}}} संभावित घातांक मान। | दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: महत्व के 34 अंक और {{math|size=100%|1=3 × 2<sup>12</sup> = {{val|12288}}}} संभावित घातांक मान। | ||
दोनों मामलों में, महत्व के सबसे महत्वपूर्ण 4 बिट्स (जिनमें वास्तव में केवल 10 संभावित मान हैं) को संयोजन फील्ड में 5 बिट्स के 32 संभावित मानों में से 30 का उपयोग करने के लिए घातांक के सबसे महत्वपूर्ण 2 बिट्स (3 संभावित मान) के साथ जोड़ा जाता है। | दोनों मामलों में, महत्व के सबसे महत्वपूर्ण 4 बिट्स (जिनमें वास्तव में केवल 10 संभावित मान होते हैं) को संयोजन फील्ड में 5 बिट्स के 32 संभावित मानों में से 30 का उपयोग करने के लिए घातांक के सबसे महत्वपूर्ण 2 बिट्स (3 संभावित मान) के साथ जोड़ा जाता है। बचे हुए कटिबद्धनें अनंतताओं [[NaN]]s को कोड करती हैं। | ||
{| class="wikitable" | {| class="wikitable" | ||
Line 50: | Line 50: | ||
| {{mono|11110mmmmmmmmmmmm}} || {{sdash}} || {{sdash}} || ±अनंत | | {{mono|11110mmmmmmmmmmmm}} || {{sdash}} || {{sdash}} || ±अनंत | ||
|- | |- | ||
| {{mono|11111mmmmmmmmmmmm}} || {{sdash}} || {{sdash}} ||NaN . | | {{mono|11111mmmmmmmmmmmm}} || {{sdash}} || {{sdash}} ||NaN . संकेत बिट को नजरअंदाज कर दिया गया। संयोजन फील्ड का छठा बिट यह निर्धारित करता है कि NaN सिग्नलिंग कर रहा है या नहीं। | ||
|} | |} | ||
अनंतता और NaN के मामले में, एन्कोडिंग के अन्य सभी बिट्स को अनदेखा कर दिया जाता है। इस प्रकार, किसी सरणी को बाइट मान से भरकर अनंतताओं या NaNs के साथ आरंभ किया जा सकता है। | |||
=== बाइनरी पूर्णांक महत्व फ़ील्ड === | === बाइनरी पूर्णांक महत्व फ़ील्ड === | ||
यह प्रारूप 0 से | यह प्रारूप 0 से {{math|size=100%|1=10<sup>34</sup> − 1}} से लेकर बाइनरी महत्व का उपयोग करता है, जिससे बड़े संख्याओं को निम्न रूप से प्रतिनिधित किया जा सकता है: {{gaps|9|999|999|999|999|999|999|999|999|999|999|999}} = 1ED09BEAD87C0378D8E63FFFFFFFF<sub>16</sub> ={{gaps|0111|1011010000|1001101111|1010101101|1000011111|0000000011|0111100011|0110001110|0110001111|1111111111|1111111111|1111111111<sub>2</sub>}}. | ||
एन्कोडिंग {{math|size=100%|1=10 × 2<sup>110</sup> − 1}} = {{gaps|12|980|742|146|337|069|071|326|240|823|050|239}} तक बाइनरी महत्व का प्रतिनिधित्व कर सकता है, लेकिन {{math|size=100%|10<sup>34</sup> − 1}} से अधिक मानें अवैध होती हैं (और मानक कारणशृंखला इन्हें इम्प्लिमेंटेशन द्वारा 0 के रूप में व्यवहारित करने की आवश्यकता होती है, यदि इन्हें इनपुट पर प्राप्त किया जाए)। | |||
यदि | जैसा कि ऊपर वर्णित किया गया है, कोडिंग उन उपयोगों के आधार पर भिन्न होती है, जिसमें अर्थविंश के सबसे महत्वपूर्ण 4 बिट 0 से 7 तक (0000<sub>2</sub> to 0111<sub>2</sub>) हैं, या इससे अधिक (1000<sub>2</sub> or 1001<sub>2</sub> हैं)। | ||
यदि संकेत बिट के बाद के 2 बिट "00", "01", या "10" हैं, तो घाती फ़ील्ड संकेत बिट के बाद के 14 बिटों से मिलते हैं, और अर्थविंश शेष 113 बिट होते हैं, जिनमें एक व्याकृत अग्रवर्ती 0 बिट होती है। | |||
s 00eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | s 00eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | ||
s 01eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | s 01eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | ||
s 10eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | s 10eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | ||
इसमें [[असामान्य संख्याएँ]] शामिल हैं | इसमें [[असामान्य संख्याएँ]] शामिल हैं जिनमें अग्रवर्ती अर्थविंश अंक 0 होता है। | ||
यदि | यदि संकेत बिट के बाद के 2 बिट "11" होते हैं, तो 14-बिट घाती फ़ील्ड को दाएं ओर 2 बिटों के बाद (संकेत बिट और "11" बिटों के बाद) बाएं ओर स्थानांतरित किया जाता है, और प्रतिनिधित अर्थविंश शेष 111 बिटों में होता है। इस मामले में आपसी गुप्त (यानी, संग्रहीत नहीं) 3-बिट क्रम "100" असली अर्थविंश में होता है। | ||
s 1100eeeeeeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | s 1100eeeeeeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | ||
Line 75: | Line 73: | ||
s 1110eeeeeeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | s 1110eeeeeeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt | ||
संकेत बिट के बाद "11" 2-बिट अनुक्रम इंगित करता है कि महत्व के लिए अंतर्निहित "100" 3-बिट उपसर्ग है। इसे बाइनरी प्रारूपों के लिए सामान्य मानों के महत्व में अंतर्निहित 1 होने की तुलना करें। 00, 01, या 10 बिट घातांक फ़ील्ड का हिस्सा हैं। | |||
दशमलव128 प्रारूप के लिए, ये सभी महत्व वैध सीमा से बाहर हैं (वे | दशमलव128 प्रारूप के लिए, ये सभी महत्व वैध सीमा से बाहर हैं (वे {{math|size=100%|2<sup>113</sup> > 1.038 × 10<sup>34</sup>}} इससे शुरू होते हैं), और इस प्रकार शून्य के रूप में डिकोड किया जाता है, लेकिन पैटर्न [[दशमलव32]] और [[दशमलव64]] के साथ समान है। | ||
उपरोक्त मामलों में, | उपरोक्त मामलों में, प्रतिनिधित मूल्य होता है: | ||
: (−1)<sup>साइन</sup>×10<sup>प्रतिपादक−6176</sup> × महत्व | : (−1)<sup>साइन</sup>×10<sup>प्रतिपादक−6176</sup> × महत्व | ||
यदि | यदि संकेत बिट के बाद के चार बिट 1111 हैं तो मान अनंत या NaN होता है, जैसा कि ऊपर वर्णित है: | ||
s 11110 xx...x ±अनंत | s 11110 xx...x ±अनंत | ||
Line 89: | Line 87: | ||
=== घनीभूत दशमलव महत्व फ़ील्ड === | === घनीभूत दशमलव महत्व फ़ील्ड === | ||
इस संस्करण में, महत्व को दशमलव अंकों की श्रृंखला के रूप में संग्रहीत किया जाता है। अग्रणी अंक 0 और 9 (3 या 4 बाइनरी बिट्स) के बीच है, और शेष महत्व सघन रूप से पैक दशमलव (डीपीडी) एन्कोडिंग का उपयोग करता है। | इस संस्करण में, महत्व को दशमलव अंकों की श्रृंखला के रूप में संग्रहीत किया जाता है। अग्रणी अंक 0 और 9 (3 या 4 बाइनरी बिट्स) के बीच होता है, और शेष महत्व सघन रूप से पैक दशमलव (डीपीडी) एन्कोडिंग का उपयोग करता है। | ||
घातांक के अग्रणी 2 बिट और महत्व के अग्रणी अंक (3 या 4 बिट) को | घातांक के अग्रणी 2 बिट और महत्व के अग्रणी अंक (3 या 4 बिट) को संकेत बिट का अनुसरण करने वाले पांच बिट्स में संयोजित किया जाता है। | ||
इसके बाद के बारह बिट्स घातांक निरंतरता फील्ड हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं। | इसके बाद के बारह बिट्स घातांक निरंतरता फील्ड होते हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं। | ||
अंतिम 110 बिट महत्वपूर्ण निरंतरता फील्ड हैं, जिसमें ग्यारह 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> प्रत्येक | अंतिम 110 बिट महत्वपूर्ण निरंतरता फील्ड होते हैं, जिसमें ग्यारह 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> प्रत्येक दशमलवेंट में तीन दशमलव अंक को दशमलव (DPD) कोडिंग का उपयोग करके प्रतिनिधित किया जाता है।<ref name="Muller_2010"/> | ||
यदि | यदि संकेत बिट के बाद के पहले दो बिट "00", "01", या "10" होते हैं, तो उन्हें घाती के प्रमुख बिट के रूप में विवेचित किया जाता है, और उनके बाद वाले तीन बिटों को अग्रवर्ती दशमलव अंक (0 से 7) के रूप में व्याख्या किया जाता है। | ||
{{pre| | {{pre| | ||
s 00 TTT (00)eeeeeeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] | s 00 TTT (00)eeeeeeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] | ||
Line 103: | Line 101: | ||
s 10 TTT (10)eeeeeeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] | s 10 TTT (10)eeeeeeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] | ||
}} | }} | ||
यदि | यदि संकेत बिट के बाद पहले दो बिट्स 11 हैं, तो दूसरे दो बिट्स घातांक के अग्रणी बिट्स हैं, और अंतिम बिट को 100 के साथ उपसर्ग करके अग्रणी दशमलव अंक (8 या 9) बनाया जाता है: | ||
{{pre| s 1100 T (00)eeeeeeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] | {{pre| s 1100 T (00)eeeeeeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] | ||
s 1101 T (01)eeeeeeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] | s 1101 T (01)eeeeeeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] |
Revision as of 00:55, 29 July 2023
Floating-point formats |
---|
IEEE 754 |
|
Other |
दशमलव128 दशमलव फ़्लोटिंग-पॉइंट कंप्यूटर नंबर प्रारूप है जो कंप्यूटर मेमोरी में 128 बिट का अवलोकन करता है। इसे आधिकारिक रूप से आईईईई 754-2008 पेश किया गया था,[1] इसका उद्देश्य वित्तीय और कर गणनाओं जैसे कार्यों में दशमलव गोलाई को सटीकता से अनुकरण करने की आवश्यकता होने पर है। Cowlishaw, Mike (2007). "दशमलव अंकगणित अक्सर पूछे जाने वाले प्रश्न - भाग 1 - सामान्य प्रश्न". speleotrove.com. IBM Corporation. Retrieved 2022-07-29.
दशमलव128 महत्व के 34 दशमलव अंकों औरका समर्थन करता है और घटाव का सीमा -6143 से +6144 तक है, अर्थात ±0.000000000000000000000000000000000×10 −6143 से ±9.999999999999999999999999999999999×10 6144तक। क्योंकि महत्व सामान्यीकृत नहीं होता है, तो 34 से कम महत्वपूर्ण अंकों वाले अधिकांश मूल्यों में कई संभावित प्रतिनिधित्व होते हैं; 1 × 102=0.1 × 103=0.01 × 104, आदि। शून्य के 12288 संभावित प्रतिनिधित्व होते हैं (नकारात्मक शून्य सहित 24576)।
दशमलव128 मानों का निरूपण
संकेत | संयोजन | महत्वपूर्ण निरंतरता |
---|---|---|
1 बिट | 17 बिट्स | 110 बिट्स |
s | mmmmmmmmmmmmmmmmm | cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc |
IEEE 754 दशमलव128 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है। मानक यह निर्दिष्ट नहीं करता है कि यह कैसे संकेत किया जाए कि किस प्रतिनिधित्व का उपयोग किया जाता है, उदाहरण के लिए ऐसी स्थिति में जहां सिस्टम के बीच दशमलव128 मान संचारित होते हैं।
बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर प्रतिनिधित्व विधि में, महत्व को बाइनरी कोडित सकारात्मक पूर्णांक के रूप में दर्शाया जाता है।
अन्य, वैकल्पिक, प्रतिनिधित्व विधि अधिकांश महत्व (सबसे महत्वपूर्ण अंक को छोड़कर) के लिए सघन रूप से पैक दशमलव (डीपीडी) पर आधारित है।
दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: महत्व के 34 अंक और 3 × 212 = 12288 संभावित घातांक मान।
दोनों मामलों में, महत्व के सबसे महत्वपूर्ण 4 बिट्स (जिनमें वास्तव में केवल 10 संभावित मान होते हैं) को संयोजन फील्ड में 5 बिट्स के 32 संभावित मानों में से 30 का उपयोग करने के लिए घातांक के सबसे महत्वपूर्ण 2 बिट्स (3 संभावित मान) के साथ जोड़ा जाता है। बचे हुए कटिबद्धनें अनंतताओं NaNs को कोड करती हैं।
संयोजन फील्ड | प्रतिपादक | महत्वपूर्ण और एमएसबिट्स | अन्य |
---|---|---|---|
00mmmmmmmmmmmmmmm | 00xxxxxxxxxxxx | 0ccc | — |
01mmmmmmmmmmmmmmm | 01xxxxxxxxxxxx | 0ccc | — |
10mmmmmmmmmmmmmmm | 10xxxxxxxxxxxx | 0ccc | — |
1100mmmmmmmmmmmmm | 00xxxxxxxxxxxx | 100c | — |
1101mmmmmmmmmmmmm | 01xxxxxxxxxxxx | 100c | — |
1110mmmmmmmmmmmmm | 10xxxxxxxxxxxx | 100c | — |
11110mmmmmmmmmmmm | — | — | ±अनंत |
11111mmmmmmmmmmmm | — | — | NaN . संकेत बिट को नजरअंदाज कर दिया गया। संयोजन फील्ड का छठा बिट यह निर्धारित करता है कि NaN सिग्नलिंग कर रहा है या नहीं। |
अनंतता और NaN के मामले में, एन्कोडिंग के अन्य सभी बिट्स को अनदेखा कर दिया जाता है। इस प्रकार, किसी सरणी को बाइट मान से भरकर अनंतताओं या NaNs के साथ आरंभ किया जा सकता है।
बाइनरी पूर्णांक महत्व फ़ील्ड
यह प्रारूप 0 से 1034 − 1 से लेकर बाइनरी महत्व का उपयोग करता है, जिससे बड़े संख्याओं को निम्न रूप से प्रतिनिधित किया जा सकता है: 9999999999999999999999999999999999 = 1ED09BEAD87C0378D8E63FFFFFFFF16 =0111101101000010011011111010101101100001111100000000110111100011011000111001100011111111111111111111111111111111112.
एन्कोडिंग 10 × 2110 − 1 = 12980742146337069071326240823050239 तक बाइनरी महत्व का प्रतिनिधित्व कर सकता है, लेकिन 1034 − 1 से अधिक मानें अवैध होती हैं (और मानक कारणशृंखला इन्हें इम्प्लिमेंटेशन द्वारा 0 के रूप में व्यवहारित करने की आवश्यकता होती है, यदि इन्हें इनपुट पर प्राप्त किया जाए)।
जैसा कि ऊपर वर्णित किया गया है, कोडिंग उन उपयोगों के आधार पर भिन्न होती है, जिसमें अर्थविंश के सबसे महत्वपूर्ण 4 बिट 0 से 7 तक (00002 to 01112) हैं, या इससे अधिक (10002 or 10012 हैं)।
यदि संकेत बिट के बाद के 2 बिट "00", "01", या "10" हैं, तो घाती फ़ील्ड संकेत बिट के बाद के 14 बिटों से मिलते हैं, और अर्थविंश शेष 113 बिट होते हैं, जिनमें एक व्याकृत अग्रवर्ती 0 बिट होती है।
s 00eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt s 01eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt s 10eeeeeeeeeeee (0)ttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt
इसमें असामान्य संख्याएँ शामिल हैं जिनमें अग्रवर्ती अर्थविंश अंक 0 होता है।
यदि संकेत बिट के बाद के 2 बिट "11" होते हैं, तो 14-बिट घाती फ़ील्ड को दाएं ओर 2 बिटों के बाद (संकेत बिट और "11" बिटों के बाद) बाएं ओर स्थानांतरित किया जाता है, और प्रतिनिधित अर्थविंश शेष 111 बिटों में होता है। इस मामले में आपसी गुप्त (यानी, संग्रहीत नहीं) 3-बिट क्रम "100" असली अर्थविंश में होता है।
s 1100eeeeeeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt s 1101eeeeeeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt s 1110eeeeeeeeeeee (100)t tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt tttttttttt
संकेत बिट के बाद "11" 2-बिट अनुक्रम इंगित करता है कि महत्व के लिए अंतर्निहित "100" 3-बिट उपसर्ग है। इसे बाइनरी प्रारूपों के लिए सामान्य मानों के महत्व में अंतर्निहित 1 होने की तुलना करें। 00, 01, या 10 बिट घातांक फ़ील्ड का हिस्सा हैं।
दशमलव128 प्रारूप के लिए, ये सभी महत्व वैध सीमा से बाहर हैं (वे 2113 > 1.038 × 1034 इससे शुरू होते हैं), और इस प्रकार शून्य के रूप में डिकोड किया जाता है, लेकिन पैटर्न दशमलव32 और दशमलव64 के साथ समान है।
उपरोक्त मामलों में, प्रतिनिधित मूल्य होता है:
- (−1)साइन×10प्रतिपादक−6176 × महत्व
यदि संकेत बिट के बाद के चार बिट 1111 हैं तो मान अनंत या NaN होता है, जैसा कि ऊपर वर्णित है:
s 11110 xx...x ±अनंत s 11111 0x...x शांत NaN s 11111 1x...x सिग्नलिंग NaN
घनीभूत दशमलव महत्व फ़ील्ड
इस संस्करण में, महत्व को दशमलव अंकों की श्रृंखला के रूप में संग्रहीत किया जाता है। अग्रणी अंक 0 और 9 (3 या 4 बाइनरी बिट्स) के बीच होता है, और शेष महत्व सघन रूप से पैक दशमलव (डीपीडी) एन्कोडिंग का उपयोग करता है।
घातांक के अग्रणी 2 बिट और महत्व के अग्रणी अंक (3 या 4 बिट) को संकेत बिट का अनुसरण करने वाले पांच बिट्स में संयोजित किया जाता है।
इसके बाद के बारह बिट्स घातांक निरंतरता फील्ड होते हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं।
अंतिम 110 बिट महत्वपूर्ण निरंतरता फील्ड होते हैं, जिसमें ग्यारह 10-बिट डिक्लेट (कंप्यूटिंग) शामिल हैं।[2] प्रत्येक दशमलवेंट में तीन दशमलव अंक को दशमलव (DPD) कोडिंग का उपयोग करके प्रतिनिधित किया जाता है।[2]
यदि संकेत बिट के बाद के पहले दो बिट "00", "01", या "10" होते हैं, तो उन्हें घाती के प्रमुख बिट के रूप में विवेचित किया जाता है, और उनके बाद वाले तीन बिटों को अग्रवर्ती दशमलव अंक (0 से 7) के रूप में व्याख्या किया जाता है।
s 00 TTT (00)eeeeeeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] s 01 TTT (01)eeeeeeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] s 10 TTT (10)eeeeeeeeeeee (0TTT)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]
यदि संकेत बिट के बाद पहले दो बिट्स 11 हैं, तो दूसरे दो बिट्स घातांक के अग्रणी बिट्स हैं, और अंतिम बिट को 100 के साथ उपसर्ग करके अग्रणी दशमलव अंक (8 या 9) बनाया जाता है:
s 1100 T (00)eeeeeeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] s 1101 T (01)eeeeeeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt] s 1110 T (10)eeeeeeeeeeee (100T)[tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt][tttttttttt]
5-बिट फ़ील्ड के शेष दो संयोजन (11110 और 11111)। क्रमशः ±अनंत और NaN का प्रतिनिधित्व करने के लिए उपयोग किया जाता है।
डिकलेट्स के लिए DPD/3BCD ट्रांसकोडिंग निम्न तालिका द्वारा दी गई है। b9...b0 DPD के बिट्स हैं, और d2...d0 तीन BCD अंक हैं।
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 और 210 = 1024.)
उपरोक्त मामलों में, दशमलव अंकों के डिकोड किए गए अनुक्रम के वास्तविक महत्व के साथ, दर्शाया गया मान है
यह भी देखें
- आईएसओ/आईईसी 10967, भाषा स्वतंत्र अंकगणित
- आदिम डेटा प्रकार
- क्यू संकेतन (वैज्ञानिक संकेतन)
संदर्भ
- ↑ IEEE Computer Society (2008-08-29). फ़्लोटिंग-पॉइंट अंकगणित के लिए आईईईई मानक. IEEE. doi:10.1109/IEEESTD.2008.4610935. ISBN 978-0-7381-5753-5. IEEE Std 754-2008.
- ↑ 2.0 2.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.
- ↑ 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.