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

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


दशमलव32 [[महत्व]] के 7 [[दशमलव अंक]]ों और −95 से +96 की घातांक सीमा का समर्थन करता है, यानी। {{gaps|±0.000|000|e=-95}} से ±{{gaps|9.999|999|e=96}}. (समान रूप से, {{gaps|±0|000|001|e=-101}} को {{gaps|±9|999|999|e=90}}.) क्योंकि महत्व सामान्यीकृत नहीं है (कोई अंतर्निहित अग्रणी 1 नहीं है), 7 से कम [[महत्वपूर्ण अंक]]ों वाले अधिकांश मानों में कई संभावित प्रतिनिधित्व होते हैं; {{gaps|1 × 10<sup>2</sup>|{{=}}|0.1 × 10<sup>3</sup>|{{=}}|0.01 × 10<sup>4</sup>}}, आदि। शून्य में 192 संभावित प्रतिनिधित्व हैं (384 जब दोनों हस्ताक्षरित शून्य शामिल हैं)।
यह उन अनुप्रयोगों के लिए आवश्यक होता है, जहां दशमलव पूर्णांक का सटीक अनुकरण करना आवश्यक है, जैसे कि यह वित्तीय और कर गणना करता हैं। इस प्रकार [[अर्ध-परिशुद्धता फ़्लोटिंग-पॉइंट प्रारूप]] प्रारूप के समान यह मेमोरी सेविंग स्टोरेज के लिए आवश्यक होता है।


डेसीमल32 फ़्लोटिंग पॉइंट एक अपेक्षाकृत नया दशमलव फ़्लोटिंग-पॉइंट प्रारूप है, जिसे औपचारिक रूप से [[IEEE 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>
दशमलव32 [[महत्व]] के 7 [[दशमलव अंक|दशमलव अंकों]] और −95 से +96 की घातांक सीमा का समर्थन करता है, अर्ताथ {{gaps|±0.000|000|e=-95}} से ±{{gaps|9.999|999|e=96}} समान रूप से, {{gaps|±0|000|001|e=-101}} को {{gaps|±9|999|999|e=90}}) का समर्थन करता हैं। क्योंकि इसका महत्व सामान्यीकृत नहीं है, इसके लिए अंतर्निहित अग्रणी का मान 1 नहीं है, इसके अतिरिक्त 7 से कम [[महत्वपूर्ण अंक|महत्वपूर्ण अंकों]] वाले अधिकांश मानों में कई संभावित प्रतिनिधित्व होते हैं, इस प्रकार {{gaps|1 × 10<sup>2</sup>|{{=}}|0.1 × 10<sup>3</sup>|{{=}}|0.01 × 10<sup>4</sup>}}, आदि मान उपयोग में लाए जाते हैं। इसके लिए शून्य में 192 संभावित प्रतिनिधित्व करते हैं, इस प्रकार 384 जब दोनों हस्ताक्षरित शून्य सम्मिलित हैं।
 
डेसीमल32 फ़्लोटिंग पॉइंट अपेक्षाकृत नया दशमलव फ़्लोटिंग-पॉइंट प्रारूप है, जिसे औपचारिक रूप से [[IEEE 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>


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


{| class="wikitable"
{| class="wikitable"
|+ Generic encoding
|+ सामान्य एन्कोडिंग
|-
|-
! Sign !! Combination !! Trailing significand field
! संकेत !! संयोजन !! अनुगामी महत्व क्षेत्र
|-
|-
! 1 bit !! {{val|11|u=bits}} !! {{val|20|u=bits}}
! 1 bit !! {{val|11|u=bits}} !! {{val|20|u=bits}}
Line 20: Line 19:
| <code>s</code> || <code>ggggggggggg</code> || <code>tttttttttttttttttttt</code>
| <code>s</code> || <code>ggggggggggg</code> || <code>tttttttttttttttttttt</code>
|}
|}
आईईईई 754 दशमलव32 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है।
आईईईई 754 दशमलव32 मानों के लिए दो वैकल्पिक प्रतिनिधित्व विधियों की अनुमति देता है। मानक यह निर्दिष्ट नहीं करता है कि यह कैसे दर्शाया जाए कि किस प्रतिनिधित्व का उपयोग किया गया है, उदाहरण के लिए ऐसी स्थिति में जहां सिस्टम के बीच दशमलव32 मान संचारित होते हैं।
मानक यह निर्दिष्ट नहीं करता है कि यह कैसे दर्शाया जाए कि किस प्रतिनिधित्व का उपयोग किया गया है,
उदाहरण के लिए ऐसी स्थिति में जहां सिस्टम के बीच दशमलव32 मान संचारित होते हैं।


बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर एक प्रतिनिधित्व विधि में,
बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर प्रतिनिधित्व विधि में इस महत्व को बाइनरी कोड धनात्मक पूर्णांक के रूप में दर्शाया गया है।
महत्व को बाइनरी कोडित सकारात्मक पूर्णांक के रूप में दर्शाया गया है।


अन्य, वैकल्पिक, प्रतिनिधित्व विधि पर आधारित है
अन्य, वैकल्पिक, प्रतिनिधित्व विधि पर आधारित है, इस प्रकार इसके अधिकांश मान के लिए सघन रूप से पैक दशमलव (डीपीडी) उपलब्ध हैं। इसका महत्व सबसे महत्वपूर्ण अंक को छोड़कर दिया जाता हैं।
अधिकांश के लिए सघन रूप से पैक दशमलव (डीपीडी)
महत्व (सबसे महत्वपूर्ण अंक को छोड़कर)।


दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: महत्व के 7 अंक और {{math|3 × 2<sup>6</sup> {{=}} 192}} संभावित घातांक मान।
दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: इसके महत्व के 7 अंक और {{math|3 × 2<sup>6</sup> {{=}} 192}} संभावित घातांक मान हैं।


दोनों एन्कोडिंग, बीआईडी ​​और डीपीडी में, 2 सबसे महत्वपूर्ण घातांक बिट्स और महत्व के 4 सबसे महत्वपूर्ण बिट्स को 5 बिट्स में संयोजित किया जाता है। संयोजन क्षेत्र में 5 बिट्स की स्थिति भिन्न होती है, लेकिन अन्यथा एन्कोडिंग समान होती है। 6 के बजाय 5 बिट्स पर्याप्त हैं, क्योंकि घातांक से 2 एमएसबी केवल 0 से 2 (3 संभावित मान) तक मानों को एन्कोड करते हैं, और महत्व के 4 एमएसबी 0 और 9 (10 संभावित मान) के बीच एक दशमलव अंक का प्रतिनिधित्व करते हैं। कुल मिलाकर हमारे पास है {{mono|1=3*10 = 30}} एक एन्कोडिंग में संयुक्त होने पर संभावित मान, जिसे 5 बिट्स में दर्शाया जा सकता है ({{tmath|1=2^5=32}}).
दोनों एन्कोडिंग, बीआईडी ​​और डीपीडी में, 2 सबसे महत्वपूर्ण घातांक बिट्स और महत्व के 4 सबसे महत्वपूर्ण बिट्स को 5 बिट्स में संयोजित किया जाता है। इसके संयोजन क्षेत्र में 5 बिट्स की स्थिति भिन्न होती है, अपितु अन्यथा एन्कोडिंग समान होती है। इस प्रकार 6 के अतिरिक्त 5 बिट्स पर्याप्त हैं, क्योंकि घातांक से 2 एमएसबी केवल 0 से 2 या 3 संभावित मान तक मानों को एन्कोड करते हैं, और इसके महत्व के लिए 4 एमएसबी 0 और 9 (10 संभावित मान) के बीच दशमलव अंक का प्रतिनिधित्व करते हैं। इस प्रकार कुल मिलाकर हमारे पास {{mono|1=3*10 = 30}} है, जिसके लिए एन्कोडिंग में संयुक्त होने पर संभावित मान, जिसे 5 बिट्स में ({{tmath|1=2^5=32}}) के रूप में दर्शाया जा सकता है।


{| class="wikitable" style="text-align:center; border-width:0;"
{| class="wikitable" style="text-align:center; border-width:0;"
|+ BID Encoding of the Combination Field
|+ संयोजन क्षेत्र की बीआईडी ​​एन्कोडिंग
|-
|-
!colspan="11" | Combination Field
!colspan="11" | संयोजन क्षेत्र
|rowspan="10" style="border-width:0; background-color:#FFF;" |
|rowspan="10" style="border-width:0; background-color:#FFF;" |
!colspan="2" | [[Bit_numbering#Most_significant_bit|MSBs]] of
!colspan="2" | [[Bit_numbering#Most_significant_bit|MSBs]] of
!rowspan="2" | LSBs of<br>Exponent
!rowspan="2" | एलएसबी
!rowspan="2" | Description
के प्रतिपादक
!rowspan="2" | विवरण
|-
|-
! g10 !! g9 !! g8 !! g7 !! g6 !! g5 !! g4 !! g3 !! g2 !! g1 !! g0 !! Exponent !! Significand
! g10 !! g9 !! g8 !! g7 !! g6 !! g5 !! g4 !! g3 !! g2 !! g1 !! g0 !! प्रतिपादक !! महत्व
|-
|-
| style="background:#cedff2;" | '''0''' || style="background:#cedff2;" | '''0''' || rowspan="3" | '''d''' || rowspan="3" | '''e''' || rowspan="3" | '''f''' || rowspan="3" | '''g''' || rowspan="3" | '''h''' || rowspan="3" | '''i''' || style="background:#cef2e0;" rowspan="3" | '''a''' || style="background:#cef2e0;" rowspan="3" | '''b''' || style="background:#cef2e0;" rowspan="3" | '''c''' || style="background:#cedff2;" | '''00''' || style="background:#cef2e0;" rowspan="3" | 0'''abc''' || rowspan="6" | '''defghi''' || rowspan="3" | Finite number<br>full binary significand = {{mono|0'''abc'''tttttttttttttttttttt}}
| style="background:#cedff2;" | '''0''' || style="background:#cedff2;" | '''0''' || rowspan="3" | '''d''' || rowspan="3" | '''e''' || rowspan="3" | '''f''' || rowspan="3" | '''g''' || rowspan="3" | '''h''' || rowspan="3" | '''i''' || style="background:#cef2e0;" rowspan="3" | '''a''' || style="background:#cef2e0;" rowspan="3" | '''b''' || style="background:#cef2e0;" rowspan="3" | '''c''' || style="background:#cedff2;" | '''00''' || style="background:#cef2e0;" rowspan="3" | 0'''abc''' || rowspan="6" | '''defghi''' || rowspan="3" | Finite number<br>full binary significand = {{mono|0'''abc'''tttttttttttttttttttt}}
Line 64: Line 59:


{| class="wikitable" style="text-align:center; border-width:0;"
{| class="wikitable" style="text-align:center; border-width:0;"
|+ DPD Encoding of the Combination Field
|+ संयोजन क्षेत्र की डीपीडी एन्कोडिंग
|-
|-
!colspan="11" | Combination Field
!colspan="11" | संयोजन क्षेत्र
|rowspan="10" style="border-width:0; background-color:#FFF;" |
|rowspan="10" style="border-width:0; background-color:#FFF;" |
!colspan="2" | [[Bit_numbering#Most_significant_bit|MSBs]] of
!colspan="2" | [[Bit_numbering#Most_significant_bit|MSBs]] of
!rowspan="2" | LSBs of<br>Exponent
!rowspan="2" | एलएसबी
!rowspan="2" | Significand's Leading<br>Decimal Digit
के  प्रतिपादक
!rowspan="2" | Description
!rowspan="2" | सिग्निफ़िकैंड का नेतृत्व
दशमलव अंक
!rowspan="2" | विवरण
|-
|-
! g10 !! g9 !! g8 !! g7 !! g6 !! g5 !! g4 !! g3 !! g2 !! g1 !! g0 !! Exponent !! Significand
! g10 !! g9 !! g8 !! g7 !! g6 !! g5 !! g4 !! g3 !! g2 !! g1 !! g0 !! प्रतिपादक !! महत्व
|-
|-
| style="background:#cedff2;" | '''0''' || style="background:#cedff2;" | '''0''' || style="background:#cef2e0;" rowspan="3" | '''a''' || style="background:#cef2e0;" rowspan="3" | '''b''' || style="background:#cef2e0;" rowspan="3" | '''c''' || rowspan="6" | '''d''' || rowspan="6" | '''e''' || rowspan="6" | '''f''' || rowspan="6" | '''g''' || rowspan="6" | '''h''' || rowspan="6" | '''i''' || style="background:#cedff2;" | '''00''' || style="background:#cef2e0;" rowspan="3" | 0'''abc''' || rowspan="6" | '''defghi''' || rowspan="3" | {{mono|4*a + 2*b + c}} || rowspan="3" | Finite number with<br><math>\text{leading decimal digit} \in\{0, \dots, 7\}</math>
| style="background:#cedff2;" | '''0''' || style="background:#cedff2;" | '''0''' || style="background:#cef2e0;" rowspan="3" | '''a''' || style="background:#cef2e0;" rowspan="3" | '''b''' || style="background:#cef2e0;" rowspan="3" | '''c''' || rowspan="6" | '''d''' || rowspan="6" | '''e''' || rowspan="6" | '''f''' || rowspan="6" | '''g''' || rowspan="6" | '''h''' || rowspan="6" | '''i''' || style="background:#cedff2;" | '''00''' || style="background:#cef2e0;" rowspan="3" | 0'''abc''' || rowspan="6" | '''defghi''' || rowspan="3" | {{mono|4*a + 2*b + c}} || rowspan="3" | Finite number with<br><math>\text{leading decimal digit} \in\{0, \dots, 7\}</math>
Line 91: Line 88:
| 1 || 1 || 1 || 1 || 1 || colspan="6" | || NaN (with payload in Significand)
| 1 || 1 || 1 || 1 || 1 || colspan="6" | || NaN (with payload in Significand)
|}
|}
बीआईडी ​​एन्कोडिंग के लिए, पूर्ण बाइनरी महत्व अनुगामी महत्व क्षेत्र से बिट्स को महत्व के एमएसबी में जोड़कर प्राप्त किया जाता है, जैसा कि ऊपर बीआईडी ​​तालिका में दिखाया गया है। परिणामी महत्व 24 बिट्स का एक सकारात्मक बाइनरी पूर्णांक है, जिसे व्यक्तिगत दशमलव अंक प्राप्त करने के लिए बार-बार 10 से विभाजित करना पड़ता है।
बीआईडी ​​एन्कोडिंग के लिए, पूर्ण बाइनरी महत्व अनुगामी महत्व क्षेत्र से बिट्स को महत्व के एमएसबी में जोड़कर प्राप्त किया जाता है, जैसा कि ऊपर बीआईडी ​​सूची में दिखाया गया है। इसका परिणामी महत्व 24 बिट्स का धनात्मक बाइनरी पूर्णांक है, जिसे व्यक्तिगत दशमलव अंक प्राप्त करने के लिए बार-बार 10 से विभाजित करना पड़ता है।
 
डीपीडी एन्कोडिंग के लिए, ऊपर दी गई डीपीडी सूची दिखाती है कि महत्व के एमएसबी से महत्व का अग्रणी दशमलव अंक कैसे प्राप्त किया जाता हैं। इस प्रकार अनुगामी महत्व और दशमलव अंक प्राप्त करने के लिए, महत्वपूर्ण अनुगामी क्षेत्र को डीपीडी नियमों के अनुसार डिकोड (नीचे देखें) करना होगा। इसके पूर्ण दशमलव महत्व तब अग्रणी और अनुगामी दशमलव अंकों को जोड़कर प्राप्त किया जाता है।


डीपीडी एन्कोडिंग के लिए, ऊपर दी गई डीपीडी तालिका दिखाती है कि महत्व के एमएसबी से महत्व का अग्रणी दशमलव अंक कैसे प्राप्त किया जाए। अनुगामी महत्व और दशमलव अंक प्राप्त करने के लिए, महत्वपूर्ण अनुगामी क्षेत्र को डीपीडी नियमों के अनुसार डिकोड करना होगा (नीचे देखें)। पूर्ण दशमलव महत्व तब अग्रणी और अनुगामी दशमलव अंकों को जोड़कर प्राप्त किया जाता है।
±अनंत के लिए, साइन बिट के अलावा, शेष सभी बिट्स को नजरअंदाज कर दिया जाता है, अर्ताथ, घातांक और महत्व दोनों क्षेत्रों का कोई प्रभाव नहीं पड़ता है।


±अनंत के लिए, साइन बिट के अलावा, शेष सभी बिट्स को नजरअंदाज कर दिया जाता है (यानी, घातांक और महत्व दोनों क्षेत्रों का कोई प्रभाव नहीं पड़ता है)।
NaNs के लिए साइन बिट का मानक में कोई अर्थ नहीं है, और इसे अनदेखा कर दिया जाता है। इसलिए, हस्ताक्षरित और अहस्ताक्षरित NaN समतुल्य हैं, भले ही कुछ प्रोग्राम NaN को हस्ताक्षरित के रूप में दिखाएंगे। बिट g5 यह निर्धारित करता है कि NaN शांत (0) या सिग्नलिंग (1) है। इसके महत्व के बिट्स NaN के पेलोड हैं, और उपयोगकर्ता परिभाषित डेटा को पकड़ सकते हैं, उदाहरण के लिए, यह पहचानने के लिए कि NaN कैसे उत्पन्न हुए थे। सामान्य महत्व की तरह, NaN का पेलोड या तो BID या DPD एन्कोडिंग में हो सकता है।
NaNs के लिए साइन बिट का मानक में कोई अर्थ नहीं है, और इसे अनदेखा कर दिया जाता है। इसलिए, हस्ताक्षरित और अहस्ताक्षरित NaN समतुल्य हैं, भले ही कुछ प्रोग्राम NaN को हस्ताक्षरित के रूप में दिखाएंगे। बिट g5 यह निर्धारित करता है कि NaN शांत है (0) या सिग्नलिंग (1)महत्व के बिट्स NaN के पेलोड हैं और उपयोगकर्ता परिभाषित डेटा को पकड़ सकते हैं (उदाहरण के लिए, यह पहचानने के लिए कि NaN कैसे उत्पन्न हुए थे)। सामान्य महत्व की तरह, NaN का पेलोड या तो BID या DPD एन्कोडिंग में हो सकता है।


=== बाइनरी पूर्णांक महत्व फ़ील्ड ===
=== बाइनरी पूर्णांक महत्व फ़ील्ड ===
यह प्रारूप 0 से लेकर बाइनरी महत्व का उपयोग करता है {{math|size=100%|1=10<sup>7</sup> − 1 = {{gaps|9|999|999}} = 98967F<sub>16</sub> = {{gaps|1001|1000100101|1001111111<sub>2</sub>}}.}} एन्कोडिंग तक बाइनरी महत्व का प्रतिनिधित्व कर सकता है {{math|size=100%|1=10 × 2<sup>20</sup> − 1 = {{gaps|10|485|759}} = 9FFFFF<sub>16</sub> = {{gaps|1001|1111111111|1111111111<sub>2</sub>}},}} लेकिन मान इससे बड़ा है {{math|size=100%|1=10<sup>7</sup> − 1}} अवैध हैं (और इनपुट पर सामने आने पर मानक को उन्हें 0 के रूप में मानने के लिए कार्यान्वयन की आवश्यकता होती है)।
यह प्रारूप 0 से लेकर बाइनरी महत्व का उपयोग करता है, इस प्रकार {{math|size=100%|1=10<sup>7</sup> − 1 = {{gaps|9|999|999}} = 98967F<sub>16</sub> = {{gaps|1001|1000100101|1001111111<sub>2</sub>}}.}} की एन्कोडिंग तक बाइनरी {{math|size=100%|1=10 × 2<sup>20</sup> − 1 = {{gaps|10|485|759}} = 9FFFFF<sub>16</sub> = {{gaps|1001|1111111111|1111111111<sub>2</sub>}},}} के महत्व का प्रतिनिधित्व कर सकता है, अपितु मान इससे बड़ा है, जिसका मान {{math|size=100%|1=10<sup>7</sup> − 1}} के लिए अवैध हैं और इनपुट पर सामने आने पर मानक को उन्हें 0 के रूप में मानने के लिए कार्यान्वयन की आवश्यकता होती है।


जैसा कि ऊपर वर्णित है, एन्कोडिंग इस पर निर्भर करती है कि महत्व के सबसे महत्वपूर्ण 4 बिट्स 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>) हैं।


यदि {{val|2|u=bits}} साइन बिट 00 , 01 , या 10 होने के बाद
यदि {{val|2|u=bits}} साइन बिट 00 , 01 , या 10 होने के पश्चात प्रतिपादक क्षेत्र में सम्मिलित हैं {{val|8|u=bits}} साइन बिट का अनुसरण करते हुए, और इसका महत्व {{val|23|u=bits}}, अंतर्निहित अग्रणी 0 बिट के साथ शेष है :
प्रतिपादक क्षेत्र में शामिल हैं {{val|8|u=bits}} साइन बिट का अनुसरण करते हुए, और
महत्व शेष है {{val|23|u=bits}}, एक अंतर्निहित अग्रणी 0 बिट के साथ:


  s 00eeeeee (0)tttt tttttttttttttttttt
  s 00eeeeee (0)tttt tttttttttttttttttt
Line 111: Line 107:
  s 10eeeeee (0) ttt ttttttttttt tttttttttttttt
  s 10eeeeee (0) ttt ttttttttttt tttttttttttttt


इसमें [[असामान्य संख्याएँ]] शामिल हैं जहाँ अग्रणी महत्व अंक 0 है।
इसमें [[असामान्य संख्याएँ]] सम्मिलित हैं जहाँ अग्रणी महत्व अंक 0 है।
 
यदि {{val|2|u=bits}} साइन बिट 11 होने के बाद, 8-बिट एक्सपोनेंट फ़ील्ड को स्थानांतरित कर दिया जाता है {{val|2|u=bits}} दाईं ओर (साइन बिट और उसके बाद 11 बिट दोनों के बाद), और दर्शाया गया महत्व शेष में है {{val|21|u=bits}}. इस मामले में वास्तविक महत्व में 3-बिट अनुक्रम 100 का एक अंतर्निहित (अर्थात संग्रहीत नहीं) अग्रणी है।


एस 1100ईईईईई (100)टी टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी
यदि {{val|2|u=bits}} साइन बिट 11 होने के पश्चात 8-बिट एक्सपोनेंट फ़ील्ड को स्थानांतरित कर दिया जाता है, इस प्रकार {{val|2|u=bits}} दाईं ओर (साइन बिट और उसके बाद 11 बिट दोनों के बाद), और दर्शाया गया महत्व {{val|21|u=bits}} के लिए शेष है। इस स्थिति में वास्तविक महत्व में 3-बिट अनुक्रम 100 का अंतर्निहित (अर्थात संग्रहीत नहीं) अग्रणी है।
एस 1101ईईईईईई (100)टी टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी
एस 1110ईईईईई (100)टी टीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटीटी


साइन बिट के बाद 11 2-बिट अनुक्रम इंगित करता है कि महत्व के लिए एक अंतर्निहित 100 3-बिट उपसर्ग है। बाइनरी प्रारूपों के लिए सामान्य मानों के महत्व में अंतर्निहित 1 होने की तुलना करें। 00, 01, या 10 बिट घातांक फ़ील्ड का हिस्सा हैं।
S 1100EEEEE (100)T TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
S 1101EEEEE (100)T TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
S 1110EEEEE (100)T TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT


महत्व क्षेत्र के अग्रणी बिट्स सबसे महत्वपूर्ण दशमलव अंक को एन्कोड नहीं करते हैं; वे बस एक बड़ी शुद्ध-बाइनरी संख्या का हिस्सा हैं। उदाहरण के लिए, का एक महत्व {{gaps|8|000|000}} को बाइनरी के रूप में एन्कोड किया गया है {{gaps|0111|1010000100|1000000000}}, अग्रणी के साथ {{val|4|u=bits}} एन्कोडिंग 7; पहला महत्व जिसके लिए 24वें बिट की आवश्यकता होती है {{math|size=100%|1=2<sup>23</sup> = {{gaps|8|388|608}}}}
साइन बिट के पश्चात 11 2-बिट अनुक्रम इंगित करता है कि महत्व के लिए अंतर्निहित 100 3-बिट उपसर्ग है। बाइनरी प्रारूपों के लिए सामान्य मानों के महत्व में अंतर्निहित 1 होने की तुलना करें। 00, 01, या 10 बिट घातांक फ़ील्ड का भाग हैं।


उपरोक्त मामलों में, दर्शाया गया मान है
महत्व क्षेत्र के अग्रणी बिट्स सबसे महत्वपूर्ण दशमलव अंक को एन्कोड नहीं करते हैं, वे बस बड़ी शुद्ध-बाइनरी संख्या का भाग हैं। उदाहरण के लिए, का महत्व {{gaps|8|000|000}} को बाइनरी {{gaps|0111|1010000100|1000000000}} के रूप में एन्कोड किया गया है, जिसके लिए इसके आगे लिखे हुए मान के साथ {{val|4|u=bits}} एन्कोडिंग का मान 7 हैं, जिसका पहला महत्व इसके लिए 24वें बिट {{math|size=100%|1=2<sup>23</sup> = {{gaps|8|388|608}}}} की आवश्यकता होती है।


: {{math|1=(−1)<sup>sign</sup> × 10<sup>exponent−101</sup> × significand}} <!-- Remember, significand is defined as an integer: 0 <= significand < 10^8 -->
उपरोक्त स्थिति में, दर्शाया गया मान इस प्रकार है-
यदि साइन बिट के बाद के चार बिट 1111 हैं तो मान अनंत या NaN है, जैसा कि ऊपर वर्णित है:


  s 11110 xx...x ±अनंत
: {{math|1=(−1)<sup>sign</sup> × 10<sup>exponent−101</sup> × significand}}
  s 11111 0x...x एक शांत NaN
यदि साइन बिट के बाद के चार बिट 1111 हैं, तो मान अनंत या NaN है, जैसा कि ऊपर वर्णित है:
  s 11111 1x...x एक सिग्नलिंग NaN
  s 11110 xx...x   ±infinity
  s 11111 0x...x   a quiet NaN
  s 11111 1x...x   a signalling NaN


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


सबसे आगे वाला {{val|2|u=bits}} घातांक और अग्रणी अंक (3 या {{val|4|u=bits}}) महत्व को पांच बिट्स में संयोजित किया जाता है जो साइन बिट का अनुसरण करते हैं।
सबसे आगे वाला {{val|2|u=bits}} घातांक और अग्रणी अंक (3 या {{val|4|u=bits}}) महत्व को पांच बिट्स में संयोजित किया जाता है जो साइन बिट का अनुसरण करते हैं।
Line 139: Line 134:
उसके बाद के ये छह बिट्स घातांक निरंतरता क्षेत्र हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं।
उसके बाद के ये छह बिट्स घातांक निरंतरता क्षेत्र हैं, जो घातांक के कम-महत्वपूर्ण बिट्स प्रदान करते हैं।


अंतिम {{val|20|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|20|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, 01, या 10 हैं, तो वे घातांक के अग्रणी बिट्स हैं, और उसके बाद के तीन बिट्स को अग्रणी दशमलव अंक (0 से 7) के रूप में समझा जाता है:


  s 00 TTT (00)eeeeee (0TTT)[tttttttttt][tttttttttt]
  s 00 TTT (00)eeeeee (0TTT)[tttttttttt][tttttttttt]
  एस 01 टीटीटी (01)ईईईईईई (0टीटीटी)[ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]
  s 01 TTT (01)eeeeee (0TTT)[tttttttttt][tttttttttt]
एस 10 टीटीटी (10)ईईईईईई (0टीटीटी)[ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]


s 10 TTT (10)eeeeee (0TTT)[tttttttttt][tttttttttt]
यदि साइन बिट के बाद पहले दो बिट्स 11 हैं, तो दूसरे दो बिट्स घातांक के अग्रणी बिट्स हैं, और अंतिम बिट को 100 के साथ उपसर्ग करके अग्रणी दशमलव अंक (8 या 9) बनाया जाता है:
यदि साइन बिट के बाद पहले दो बिट्स 11 हैं, तो दूसरे दो बिट्स घातांक के अग्रणी बिट्स हैं, और अंतिम बिट को 100 के साथ उपसर्ग करके अग्रणी दशमलव अंक (8 या 9) बनाया जाता है:


  एस 1100 टी (00)ईईईईई (100टी)[ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]
  s 1100 T (00)eeeeee (100T)[tttttttttt][tttttttttt]
  एस 1101 टी (01)ईईईईईई (100टी)[ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]
  s 1101 T (01)eeeeee (100T)[tttttttttt][tttttttttt]
  एस 1110 टी (10)ईईईईईई (100टी)[ट्टट्टट्टट्ट][ट्टट्टट्टट्ट]
 
  s 1110 T (10)eeeeee (100T)[tttttttttt][tttttttttt]
बिट फ़ील्ड के शेष दो संयोजन (11110 और 11111) हैं। इस प्रकार क्रमशः ±अनंत और NaN का प्रतिनिधित्व करने के लिए उपयोग किया जाता है।


5-बिट फ़ील्ड के शेष दो संयोजन (11110 और 11111)।
डिकलेट्स के लिए DPD/3BCD ट्रांसकोडिंग निम्न सूची द्वारा दी गई है।
क्रमशः ±अनंत और NaN का प्रतिनिधित्व करने के लिए उपयोग किया जाता है।


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


Line 162: Line 157:


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>(-1)^\text{signbit}\times 10^{\text{exponentbits}_2-101_{10}}\times \text{truesignificand}_{10}</math>
( इसका मान {{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-101_{10}}\times \text{truesignificand}_{10}</math>
== यह भी देखें ==
== यह भी देखें ==
* [[वैज्ञानिक संकेतन]]
* [[वैज्ञानिक संकेतन]]
Line 175: Line 170:
== संदर्भ ==
== संदर्भ ==
{{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:Templates Vigyan Ready]]
[[Category:कंप्यूटर अंकगणित]]
[[Category:डेटा के प्रकार]]
[[Category:फ़्लोटिंग पॉइंट प्रकार]]

Latest revision as of 17:20, 8 August 2023

कम्प्यूटिंग में, दशमलव32 फ़्लोटिंग-पॉइंट मुख्य रूप से कंप्यूटर क्रमांकन का ऐसा प्रारूप है, जो कंप्यूटर मेमोरी में 4 बाइट्स (32 बिट्स) का स्पेस रखता है।

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

दशमलव32 महत्व के 7 दशमलव अंकों और −95 से +96 की घातांक सीमा का समर्थन करता है, अर्ताथ ±0.000000×10^−95 से ±9.999999×10^96 समान रूप से, ±0000001×10^−101 को ±9999999×10^90) का समर्थन करता हैं। क्योंकि इसका महत्व सामान्यीकृत नहीं है, इसके लिए अंतर्निहित अग्रणी का मान 1 नहीं है, इसके अतिरिक्त 7 से कम महत्वपूर्ण अंकों वाले अधिकांश मानों में कई संभावित प्रतिनिधित्व होते हैं, इस प्रकार 1 × 102=0.1 × 103=0.01 × 104, आदि मान उपयोग में लाए जाते हैं। इसके लिए शून्य में 192 संभावित प्रतिनिधित्व करते हैं, इस प्रकार 384 जब दोनों हस्ताक्षरित शून्य सम्मिलित हैं।

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

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

सामान्य एन्कोडिंग
संकेत संयोजन अनुगामी महत्व क्षेत्र
1 bit 11 bits 20 bits
s ggggggggggg tttttttttttttttttttt

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

बाइनरी पूर्णांक दशमलव (बीआईडी) के आधार पर प्रतिनिधित्व विधि में इस महत्व को बाइनरी कोड धनात्मक पूर्णांक के रूप में दर्शाया गया है।

अन्य, वैकल्पिक, प्रतिनिधित्व विधि पर आधारित है, इस प्रकार इसके अधिकांश मान के लिए सघन रूप से पैक दशमलव (डीपीडी) उपलब्ध हैं। इसका महत्व सबसे महत्वपूर्ण अंक को छोड़कर दिया जाता हैं।

दोनों विकल्प प्रतिनिधित्व योग्य संख्याओं की बिल्कुल समान श्रेणी प्रदान करते हैं: इसके महत्व के 7 अंक और 3 × 26 = 192 संभावित घातांक मान हैं।

दोनों एन्कोडिंग, बीआईडी ​​और डीपीडी में, 2 सबसे महत्वपूर्ण घातांक बिट्स और महत्व के 4 सबसे महत्वपूर्ण बिट्स को 5 बिट्स में संयोजित किया जाता है। इसके संयोजन क्षेत्र में 5 बिट्स की स्थिति भिन्न होती है, अपितु अन्यथा एन्कोडिंग समान होती है। इस प्रकार 6 के अतिरिक्त 5 बिट्स पर्याप्त हैं, क्योंकि घातांक से 2 एमएसबी केवल 0 से 2 या 3 संभावित मान तक मानों को एन्कोड करते हैं, और इसके महत्व के लिए 4 एमएसबी 0 और 9 (10 संभावित मान) के बीच दशमलव अंक का प्रतिनिधित्व करते हैं। इस प्रकार कुल मिलाकर हमारे पास 3*10 = 30 है, जिसके लिए एन्कोडिंग में संयुक्त होने पर संभावित मान, जिसे 5 बिट्स में () के रूप में दर्शाया जा सकता है।

संयोजन क्षेत्र की बीआईडी ​​एन्कोडिंग
संयोजन क्षेत्र MSBs of एलएसबी

के प्रतिपादक

विवरण
g10 g9 g8 g7 g6 g5 g4 g3 g2 g1 g0 प्रतिपादक महत्व
0 0 d e f g h i a b c 00 0abc defghi Finite number
full binary significand = 0abctttttttttttttttttttt
0 1 01
1 0 10
1 1 0 0 d e f g h i c 00 100c Finite number
full binary significand = 100ctttttttttttttttttttt
1 1 0 1 01
1 1 1 0 10
1 1 1 1 0 ±Infinity
1 1 1 1 1 NaN (with payload in Significand)
संयोजन क्षेत्र की डीपीडी एन्कोडिंग
संयोजन क्षेत्र MSBs of एलएसबी

के प्रतिपादक

सिग्निफ़िकैंड का नेतृत्व

दशमलव अंक

विवरण
g10 g9 g8 g7 g6 g5 g4 g3 g2 g1 g0 प्रतिपादक महत्व
0 0 a b c d e f g h i 00 0abc defghi 4*a + 2*b + c Finite number with
0 1 01
1 0 10
1 1 0 0 c 00 100c 8 + c Finite number with
1 1 0 1 01
1 1 1 0 10
1 1 1 1 0 ±Infinity
1 1 1 1 1 NaN (with payload in Significand)

बीआईडी ​​एन्कोडिंग के लिए, पूर्ण बाइनरी महत्व अनुगामी महत्व क्षेत्र से बिट्स को महत्व के एमएसबी में जोड़कर प्राप्त किया जाता है, जैसा कि ऊपर बीआईडी ​​सूची में दिखाया गया है। इसका परिणामी महत्व 24 बिट्स का धनात्मक बाइनरी पूर्णांक है, जिसे व्यक्तिगत दशमलव अंक प्राप्त करने के लिए बार-बार 10 से विभाजित करना पड़ता है।

डीपीडी एन्कोडिंग के लिए, ऊपर दी गई डीपीडी सूची दिखाती है कि महत्व के एमएसबी से महत्व का अग्रणी दशमलव अंक कैसे प्राप्त किया जाता हैं। इस प्रकार अनुगामी महत्व और दशमलव अंक प्राप्त करने के लिए, महत्वपूर्ण अनुगामी क्षेत्र को डीपीडी नियमों के अनुसार डिकोड (नीचे देखें) करना होगा। इसके पूर्ण दशमलव महत्व तब अग्रणी और अनुगामी दशमलव अंकों को जोड़कर प्राप्त किया जाता है।

±अनंत के लिए, साइन बिट के अलावा, शेष सभी बिट्स को नजरअंदाज कर दिया जाता है, अर्ताथ, घातांक और महत्व दोनों क्षेत्रों का कोई प्रभाव नहीं पड़ता है।

NaNs के लिए साइन बिट का मानक में कोई अर्थ नहीं है, और इसे अनदेखा कर दिया जाता है। इसलिए, हस्ताक्षरित और अहस्ताक्षरित NaN समतुल्य हैं, भले ही कुछ प्रोग्राम NaN को हस्ताक्षरित के रूप में दिखाएंगे। बिट g5 यह निर्धारित करता है कि NaN शांत (0) या सिग्नलिंग (1) है। इसके महत्व के बिट्स NaN के पेलोड हैं, और उपयोगकर्ता परिभाषित डेटा को पकड़ सकते हैं, उदाहरण के लिए, यह पहचानने के लिए कि NaN कैसे उत्पन्न हुए थे। सामान्य महत्व की तरह, NaN का पेलोड या तो BID या DPD एन्कोडिंग में हो सकता है।

बाइनरी पूर्णांक महत्व फ़ील्ड

यह प्रारूप 0 से लेकर बाइनरी महत्व का उपयोग करता है, इस प्रकार 107 − 1 = 9999999 = 98967F16 = 1001100010010110011111112. की एन्कोडिंग तक बाइनरी 10 × 220 − 1 = 10485759 = 9FFFFF16 = 1001111111111111111111112, के महत्व का प्रतिनिधित्व कर सकता है, अपितु मान इससे बड़ा है, जिसका मान 107 − 1 के लिए अवैध हैं और इनपुट पर सामने आने पर मानक को उन्हें 0 के रूप में मानने के लिए कार्यान्वयन की आवश्यकता होती है।

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

यदि 2 bits साइन बिट 00 , 01 , या 10 होने के पश्चात प्रतिपादक क्षेत्र में सम्मिलित हैं 8 bits साइन बिट का अनुसरण करते हुए, और इसका महत्व 23 bits, अंतर्निहित अग्रणी 0 बिट के साथ शेष है :

s 00eeeeee (0)tttt tttttttttttttttttt
s 01eeeeee (0)tttt tttttttttttttttttt
s 10eeeeee (0) ttt ttttttttttt tttttttttttttt

इसमें असामान्य संख्याएँ सम्मिलित हैं जहाँ अग्रणी महत्व अंक 0 है।

यदि 2 bits साइन बिट 11 होने के पश्चात 8-बिट एक्सपोनेंट फ़ील्ड को स्थानांतरित कर दिया जाता है, इस प्रकार 2 bits दाईं ओर (साइन बिट और उसके बाद 11 बिट दोनों के बाद), और दर्शाया गया महत्व 21 bits के लिए शेष है। इस स्थिति में वास्तविक महत्व में 3-बिट अनुक्रम 100 का अंतर्निहित (अर्थात संग्रहीत नहीं) अग्रणी है।

S 1100EEEEE (100)T TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
S 1101EEEEE (100)T TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT
S 1110EEEEE (100)T TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT

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

महत्व क्षेत्र के अग्रणी बिट्स सबसे महत्वपूर्ण दशमलव अंक को एन्कोड नहीं करते हैं, वे बस बड़ी शुद्ध-बाइनरी संख्या का भाग हैं। उदाहरण के लिए, का महत्व 8000000 को बाइनरी 011110100001001000000000 के रूप में एन्कोड किया गया है, जिसके लिए इसके आगे लिखे हुए मान के साथ 4 bits एन्कोडिंग का मान 7 हैं, जिसका पहला महत्व इसके लिए 24वें बिट 223 = 8388608 की आवश्यकता होती है।

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

(−1)sign × 10exponent−101 × 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) महत्व को पांच बिट्स में संयोजित किया जाता है जो साइन बिट का अनुसरण करते हैं।

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

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

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

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

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

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

बिट फ़ील्ड के शेष दो संयोजन (11110 और 11111) हैं। इस प्रकार क्रमशः ±अनंत और 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.