ऑफसेट बाइनरी: Difference between revisions

From Vigyanwiki
m (10 revisions imported from alpha:ऑफसेट_बाइनरी)
No edit summary
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
{{Short description|Method for signed number representation}}
'''ऑफसेट बाइनरी''',<ref name="Patrice_2006"/> जिसे अतिरिक्त-K,<ref name="Patrice_2006"/>'''अतिरिक्त-''N'', अतिरिक्त-e''',<ref name="Dokter_1973"/><ref name="Dokter_1975"/>'''अतिरिक्त कोड या अभिनत प्रतिरूपण,''' के रूप में भी जाना जाता है, वह [[हस्ताक्षरित संख्या प्रतिनिधित्व|हस्ताक्षरित संख्या प्रतिरूपण]] के लिए एक विधि है जहां एक हस्ताक्षरित संख्या <var>n</var> को अहस्ताक्षरित संख्या <var>n</var>+<var>K के अनुरूप द्वयंक प्रतिरूप द्वारा दर्शाया जाता है, जहाँ <var>K</var> ''पूर्वाग्रह मान'' या ''ऑफ़सेट'' होता है। ऑफसेट बाइनरी के लिए कोई मानक नहीं है, लेकिन प्रायः ''एन''-बिट बाइनरी शब्द के लिए ''K,'' ''K''=2<sup>n−1</sup>होता है (उदाहरण के लिए, चार अंकों वाली बाइनरी संख्या के लिए ऑफसेट 2<sup>3</sup>=8 होगा)। इसका परिणाम यह होता है कि न्यूनतम ऋणात्मक मान को सभी-शून्य द्वारा दर्शाया जाता है, तथा शून्य मान को सबसे महत्वपूर्ण बिट में 1 और अन्य सभी बिट्स में शून्य द्वारा दर्शाया जाता है, और [[पूर्णांक अतिप्रवाह|अधिकतम धनात्मक]] मान को सभी-बिट द्वारा दर्शाया जाता है (सुविधाजनक रूप से, यह यह [[दो के पूरक]] का उपयोग करने के समान है लेकिन सबसे महत्वपूर्ण बिट व्युत्क्रमित है)। इसका परिणाम यह भी होता है कि एक तार्किक तुलना संचालन में, एक वास्तविक स्वरूपी संख्यात्मक तुलना संचालन के समान परिणाम मिलता है, जबकि दो का पूरक संकेतन में एक तार्किक तुलना केवल तभी सहमत होगी जब केवल तुलना की जा रही संख्याएँ एक ही चिह्न वाली हों। अन्यथा तुलना का अर्थ व्युत्क्रमित हो जाएगा, जिससे सभी ऋणात्मक मूल्यों को सभी धनात्मक मूल्यों से बड़ा मान लिया जाएगा।
{{About|सामान्य तौर पर पक्षपातपूर्ण प्रतिनिधित्व|अतिरिक्त-3 प्रतिनिधित्व|स्थानांतरित बाइनरी (कोड)|द्विआधारी स्थानांतरण|Bit shifting}}


'''ऑफसेट द्विआधारी''',<ref name="Patrice_2006"/> जिसे अतिरिक्त-K,<ref name="Patrice_2006"/>'''अतिरिक्त-''N'', अतिरिक्त-e''',<ref name="Dokter_1973"/><ref name="Dokter_1975"/>'''अतिरिक्त कोड या अभिनत प्रतिरूपण,''' के रूप में भी जाना जाता है, वह [[हस्ताक्षरित संख्या प्रतिनिधित्व|हस्ताक्षरित संख्या प्रतिरूपण]] के लिए एक विधि है जहां एक हस्ताक्षरित संख्या <var>n</var> को अहस्ताक्षरित संख्या <var>n</var>+<var>K के अनुरूप द्वयंक प्रतिरूप द्वारा दर्शाया जाता है, जहाँ <var>K</var> ''पूर्वाग्रह मान'' या ''ऑफ़सेट'' होता है। ऑफसेट द्विआधारी के लिए कोई मानक नहीं है, लेकिन प्रायः ''एन''-बिट द्विआधारी शब्द के लिए ''K,'' ''K''=2<sup>n−1</sup>होता है (उदाहरण के लिए, चार अंकों वाली द्विआधारी संख्या के लिए ऑफसेट 2<sup>3</sup>=8 होगा)। इसका परिणाम यह होता है कि न्यूनतम ऋणात्मक मान को सभी-शून्य द्वारा दर्शाया जाता है, तथा शून्य मान को सबसे महत्वपूर्ण बिट में 1 और अन्य सभी बिट्स में शून्य द्वारा दर्शाया जाता है, और [[पूर्णांक अतिप्रवाह|अधिकतम धनात्मक]] मान को सभी-बिट द्वारा दर्शाया जाता है (सुविधाजनक रूप से, यह यह [[दो के पूरक]] का उपयोग करने के समान है लेकिन सबसे महत्वपूर्ण बिट व्युत्क्रमित है)। इसका परिणाम यह भी होता है कि एक तार्किक तुलना संचालन में, एक वास्तविक स्वरूपी संख्यात्मक तुलना संचालन के समान परिणाम मिलता है, जबकि दो का पूरक संकेतन में एक तार्किक तुलना केवल तभी सहमत होगी जब केवल तुलना की जा रही संख्याएँ एक ही चिह्न वाली हों। अन्यथा तुलना का अर्थ व्युत्क्रमित हो जाएगा, जिससे सभी ऋणात्मक मूल्यों को सभी धनात्मक मूल्यों से बड़ा मान लिया जाएगा।
  प्रारंभिक तुल्यकालिक बहुसंकेतन टेलीग्राफ में उपयोग किए जाने वाले 5-बिट [[बॉडॉट कोड]] को ऑफसेट-1 (अतिरिक्त-1) [[प्रतिबिंबित द्विआधारी (ग्रे) कोड|प्रतिबिंबित बाइनरी (ग्रे) कोड]] के रूप में देखा जा सकता है।
 
  प्रारंभिक तुल्यकालिक बहुसंकेतन टेलीग्राफ में उपयोग किए जाने वाले 5-बिट [[बॉडॉट कोड]] को ऑफसेट-1 (अतिरिक्त-1) [[प्रतिबिंबित द्विआधारी (ग्रे) कोड]] के रूप में देखा जा सकता है।


ऑफसेट-64 (अतिरिक्त-64) संकेतन का एक ऐतिहासिक रूप से प्रमुख उदाहरण आईबीएम प्रणाली/360 और प्रणाली/370 पीढ़ी के कंप्यूटरों में [[ तैरनेवाला स्थल |चल बिन्दु]] (चरघातांकी) संकेतन में था। विशेषता (चर घातांक) ने सात-बिट अतिरिक्त-64 संख्या का रूप ले लिया (उसी बाइट के उच्च-क्रम बिट में [[महत्व]] का चिह्न सम्मिलित था)।<ref name="IBM_360"/>
ऑफसेट-64 (अतिरिक्त-64) संकेतन का एक ऐतिहासिक रूप से प्रमुख उदाहरण आईबीएम प्रणाली/360 और प्रणाली/370 पीढ़ी के कंप्यूटरों में [[ तैरनेवाला स्थल |चल बिन्दु]] (चरघातांकी) संकेतन में था। विशेषता (चर घातांक) ने सात-बिट अतिरिक्त-64 संख्या का रूप ले लिया (उसी बाइट के उच्च-क्रम बिट में [[महत्व]] का चिह्न सम्मिलित था)।<ref name="IBM_360"/>


[[माइक्रोसॉफ्ट बाइनरी फॉर्मेट|माइक्रोसॉफ्ट द्विआधारी प्रारूप]] में 8-बिट चर घातांक, 1970 और 1980 के दशक में विभिन्न प्रोग्रामिंग भाषाओं (विशेष रूप से [[ बुनियादी |आधारभूत]]) में उपयोग किया जाने वाले एक चल बिन्दु प्रारूप के रूप में, ऑफसेट-129 संकेतन (अतिरिक्त-129) का उपयोग करके कूटबद्‍ध किया गया था।
[[माइक्रोसॉफ्ट बाइनरी फॉर्मेट|माइक्रोसॉफ्ट बाइनरी प्रारूप]] में 8-बिट चर घातांक, 1970 और 1980 के दशक में विभिन्न प्रोग्रामिंग भाषाओं (विशेष रूप से [[ बुनियादी |आधारभूत]]) में उपयोग किया जाने वाले एक चल बिन्दु प्रारूप के रूप में, ऑफसेट-129 संकेतन (अतिरिक्त-129) का उपयोग करके कूटबद्‍ध किया गया था।


[[चल बिन्दु अंकगणित के लिए IEEE मानक (IEEE 754)]] [[परिशुद्धता के अपने विभिन्न प्रारूपों]] में से प्रत्येक में घातांक भाग के लिए ऑफसेट संकेतन का उपयोग करता है। हालाँकि, असामान्य रूप से, अतिरिक्त 2<sup>n−1</sup> का उपयोग करने के बजाय यह अतिरिक्त 2 <sup>n−1</sup> − 1 (अर्थात अतिरिक्त-15, अतिरिक्त-127, अतिरिक्त-1023, अतिरिक्त-16383) का उपयोग करता है जिसका अर्थ है कि घातांक के अग्रणी (उच्च-क्रम) बिट को उलटने से घातांक दो के पूरक संकेतन को सही करने में परिवर्तित नहीं होगा।
[[चल बिन्दु अंकगणित के लिए IEEE मानक (IEEE 754)]] [[परिशुद्धता के अपने विभिन्न प्रारूपों]] में से प्रत्येक में घातांक भाग के लिए ऑफसेट संकेतन का उपयोग करता है। हालाँकि, असामान्य रूप से, अतिरिक्त 2<sup>n−1</sup> का उपयोग करने के बजाय यह अतिरिक्त 2 <sup>n−1</sup> − 1 (अर्थात अतिरिक्त-15, अतिरिक्त-127, अतिरिक्त-1023, अतिरिक्त-16383) का उपयोग करता है जिसका अर्थ है कि घातांक के अग्रणी (उच्च-क्रम) बिट को उलटने से घातांक दो के पूरक संकेतन को सही करने में परिवर्तित नहीं होगा।


ऑफसेट द्विआधारी का उपयोग प्रायः [[ अंकीय संकेत प्रक्रिया |अंकीय संकेत प्रक्रमण]] (डीएसपी) में किया जाता है। अधिकांश [[एनॉलॉग से डिजिटल परिवर्तित करने वाला उपकरण|अनुरूप से अंकीय]] (A/D) और [[डिज़िटल से एनालॉग कन्वर्टर|अंक से अनुरूप रूपांतरित्र]] (D/A) चिप्स एकध्रुवीय होते हैं, जिसका अर्थ है कि वे [[द्विध्रुवी संकेत|द्विध्रुवी संकेतों]] (धनात्मक और ऋणात्मक दोनों मूल्यों वाले संकेत) को संभाल नहीं सकते हैं। इसका एक सरल समाधान ए/डी और डी/ए परिवर्तक की सीमा के आधे के बराबर डीसी ऑफसेट के साथ अनुरूप संकेत को पूर्वाग्रहित करना है। परिणामी डिजिटल डेटा अंततः ऑफसेट द्विआधारी प्रारूप में समाप्त हो जाता है।<ref name="Chen_1988"/>
ऑफसेट बाइनरी का उपयोग प्रायः [[ अंकीय संकेत प्रक्रिया |अंकीय संकेत प्रक्रमण]] (डीएसपी) में किया जाता है। अधिकांश [[एनॉलॉग से डिजिटल परिवर्तित करने वाला उपकरण|अनुरूप से अंकीय]] (A/D) और [[डिज़िटल से एनालॉग कन्वर्टर|अंक से अनुरूप रूपांतरित्र]] (D/A) चिप्स एकध्रुवीय होते हैं, जिसका अर्थ है कि वे [[द्विध्रुवी संकेत|द्विध्रुवी संकेतों]] (धनात्मक और ऋणात्मक दोनों मूल्यों वाले संकेत) को संभाल नहीं सकते हैं। इसका एक सरल समाधान ए/डी और डी/ए परिवर्तक की सीमा के आधे के बराबर डीसी ऑफसेट के साथ अनुरूप संकेत को पूर्वाग्रहित करना है। परिणामी डिजिटल डेटा अंततः ऑफसेट बाइनरी प्रारूप में समाप्त हो जाता है।<ref name="Chen_1988"/>


अधिकांश मानक कंप्यूटर सीपीयू चिप्स ऑफसेट द्विआधारी प्रारूप को सीधे संभाल नहीं सकते हैं{{citation needed|reason=This claim is not cited not supported in the paragraph|date=January 2022}}। सीपीयू चिप्स सामान्य तौर पर केवल हस्ताक्षरित और अहस्ताक्षरित पूर्णांक, और चल बिन्दु मान प्रारूपों को संभाल सकते हैं। इन सीपीयू चिप्स द्वारा ऑफसेट द्विआधारी मानों को कई तरीकों से नियंत्रित किया जा सकता है। डेटा को केवल अहस्ताक्षरित पूर्णांक के रूप में माना जा सकता है, जिससे प्रोग्रामर को सॉफ़्टवेयर में शून्य ऑफसेट का सामना करने की आवश्यकता होती है। डेटा को केवल शून्य ऑफसेट घटाकर हस्ताक्षरित पूर्णांक प्रारूप (जिसे सीपीयू मूल रूप से संभाल सकता है) में परिवर्तित किया जा सकता है। एक n-बिट शब्द के लिए सबसे सामान्य ऑफसेट 2<sup>n−1</sup> होने के परिणामस्वरूप, जिसका अर्थ है कि पहला बिट दो के पूरक के सापेक्ष व्युत्क्रमित है, तथा एक अलग घटाव चरण की कोई आवश्यकता नहीं है, लेकिन कोई व्यक्ति पहले बिट को व्युत्क्रमित कर सकता है। यह कभी-कभी हार्डवेयर में उपयोगी सरलीकरण होता है, और सॉफ्टवेयर में भी सुविधाजनक हो सकता है।
अधिकांश मानक कंप्यूटर सीपीयू चिप्स ऑफसेट बाइनरी प्रारूप को सीधे संभाल नहीं सकते हैं। सीपीयू चिप्स सामान्य तौर पर केवल हस्ताक्षरित और अहस्ताक्षरित पूर्णांक, और चल बिन्दु मान प्रारूपों को संभाल सकते हैं। इन सीपीयू चिप्स द्वारा ऑफसेट बाइनरी मानों को कई तरीकों से नियंत्रित किया जा सकता है। डेटा को केवल अहस्ताक्षरित पूर्णांक के रूप में माना जा सकता है, जिससे प्रोग्रामर को सॉफ़्टवेयर में शून्य ऑफसेट का सामना करने की आवश्यकता होती है। डेटा को केवल शून्य ऑफसेट घटाकर हस्ताक्षरित पूर्णांक प्रारूप (जिसे सीपीयू मूल रूप से संभाल सकता है) में परिवर्तित किया जा सकता है। एक n-बिट शब्द के लिए सबसे सामान्य ऑफसेट 2<sup>n−1</sup> होने के परिणामस्वरूप, जिसका अर्थ है कि पहला बिट दो के पूरक के सापेक्ष व्युत्क्रमित है, तथा एक अलग घटाव चरण की कोई आवश्यकता नहीं है, लेकिन कोई व्यक्ति पहले बिट को व्युत्क्रमित कर सकता है। यह कभी-कभी हार्डवेयर में उपयोगी सरलीकरण होता है, और सॉफ्टवेयर में भी सुविधाजनक हो सकता है।


तुलना के लिए [[दो के पूरक]] के साथ, चार बिट्स के लिए ऑफसेट द्विआधारी की तालिका,<ref name="Intersil_1997"/>
तुलना के लिए [[दो के पूरक]] के साथ, चार बिट्स के लिए ऑफसेट बाइनरी की तालिका,<ref name="Intersil_1997"/>
{| class="wikitable" border="1"
{| class="wikitable" border="1"
|-
|-
! दशमलव
! दशमलव
! ऑफसेट द्विआधारी, <br/>''K'' = 8
! ऑफसेट बाइनरी, <br/>''K'' = 8
! दो के  
! दो के  
पूरक
पूरक
Line 88: Line 85:
| 1000
| 1000
|}
|}
ऑफसेट द्विआधारी को सबसे महत्वपूर्ण बिट को व्युत्क्रमित करके दो के पूरक में परिवर्तित किया जा सकता है। उदाहरण के लिए, 8-बिट मानों के साथ, ऑफसेट द्विआधारी मान को दो के पूरक में परिवर्तित करने के लिए 0x80 के साथ XORed किया जा सकता है। विशिष्ट हार्डवेयर में बिट को उसके मूल रूप में स्वीकार करना आसान हो सकता है, साथ ही इसके मूल्य को व्युत्क्रमित महत्व में लागू करना भी आसान हो सकता है।
ऑफसेट बाइनरी को सबसे महत्वपूर्ण बिट को व्युत्क्रमित करके दो के पूरक में परिवर्तित किया जा सकता है। उदाहरण के लिए, 8-बिट मानों के साथ, ऑफसेट बाइनरी मान को दो के पूरक में परिवर्तित करने के लिए 0x80 के साथ XORed किया जा सकता है। विशिष्ट हार्डवेयर में बिट को उसके मूल रूप में स्वीकार करना आसान हो सकता है, साथ ही इसके मूल्य को व्युत्क्रमित महत्व में लागू करना भी आसान हो सकता है।


==संबंधित कोड==
==संबंधित कोड==
{{Missing information|अनुभाग|ये टेबल|date=जनवरी 2022}}
:<math>z = \frac{1}{q}\left[\left(\sum_{i=1}^n p_i \times b_i\right) - k\right]</math><ref name="Dokter_1973"/><ref name="Dokter_1975"/><ref name="Morgenstern_1997"/>
:<math>z = \frac{1}{q}\left[\left(\sum_{i=1}^n p_i \times b_i\right) - k\right]</math><ref name="Dokter_1973"/><ref name="Dokter_1975"/><ref name="Morgenstern_1997"/>


Line 364: Line 360:
== यह भी देखें ==
== यह भी देखें ==
* [[हस्ताक्षरित संख्या अभ्यावेदन]]
* [[हस्ताक्षरित संख्या अभ्यावेदन]]
* [[बाइनरी संख्या|द्विआधारी संख्या]]
* [[बाइनरी संख्या]]
*[[अतिरिक्त-3]]
*[[अतिरिक्त-3]]
*[[अतिरिक्त-128]]
*[[अतिरिक्त-128]]
Line 370: Line 366:
* [[अतिरिक्त-ग्रे कोड]]
* [[अतिरिक्त-ग्रे कोड]]
* [[अपनों का पूरक|किसी का पूरक]]
* [[अपनों का पूरक|किसी का पूरक]]
* [[ बाइनरी ऑफसेट वाहक | द्विआधारी ऑफसेट वाहक]]
* [[ बाइनरी ऑफसेट वाहक]]


== संदर्भ ==
== संदर्भ ==
Line 396: Line 392:
* {{anchor|Excess-32|Excess-256|Excess-976|Excess-2048|Excess-16384}} {{cite web |title=Floating-Point Formats |author-first=John J. G. |author-last=Savard |date=2018 |orig-year=2005 |work=quadibloc |url=http://www.quadibloc.com/comp/cp0201.htm |access-date=2018-07-16 |url-status=live |archive-url=https://web.archive.org/web/20180703001709/http://www.quadibloc.com/comp/cp0201.htm |archive-date=2018-07-03}} (NB. Mentions Excess-32, Excess-64, Excess-128, Excess-256, Excess-976, Excess-1023, Excess-1024, Excess-2048, Excess-16384.)
* {{anchor|Excess-32|Excess-256|Excess-976|Excess-2048|Excess-16384}} {{cite web |title=Floating-Point Formats |author-first=John J. G. |author-last=Savard |date=2018 |orig-year=2005 |work=quadibloc |url=http://www.quadibloc.com/comp/cp0201.htm |access-date=2018-07-16 |url-status=live |archive-url=https://web.archive.org/web/20180703001709/http://www.quadibloc.com/comp/cp0201.htm |archive-date=2018-07-03}} (NB. Mentions Excess-32, Excess-64, Excess-128, Excess-256, Excess-976, Excess-1023, Excess-1024, Excess-2048, Excess-16384.)
* {{anchor|Excess-500|Excess-512|Excess-1024}} {{cite web |title=Computer Arithmetic |author-first=John J. G. |author-last=Savard |date=2018 |orig-year=2005 |work=quadibloc |url=http://www.quadibloc.com/comp/cp02.htm |access-date=2018-07-16 |url-status=live |archive-url=https://web.archive.org/web/20180716102439/http://www.quadibloc.com/comp/cp02.htm |archive-date=2018-07-16}} (NB. Mentions Excess-64, Excess-500, Excess-512, Excess-1024.)
* {{anchor|Excess-500|Excess-512|Excess-1024}} {{cite web |title=Computer Arithmetic |author-first=John J. G. |author-last=Savard |date=2018 |orig-year=2005 |work=quadibloc |url=http://www.quadibloc.com/comp/cp02.htm |access-date=2018-07-16 |url-status=live |archive-url=https://web.archive.org/web/20180716102439/http://www.quadibloc.com/comp/cp02.htm |archive-date=2018-07-16}} (NB. Mentions Excess-64, Excess-500, Excess-512, Excess-1024.)
[[Category: अंक प्रणाली]] [[Category: बाइनरी अंकगणित]]


[[Category: Machine Translated Page]]
[[Category:All articles with unsourced statements]]
[[Category:Articles to be expanded from जनवरी 2022]]
[[Category:Articles with hatnote templates targeting a nonexistent page]]
[[Category:Articles with invalid date parameter in template]]
[[Category:Articles with unsourced statements from January 2022]]
[[Category:CS1 Deutsch-language sources (de)]]
[[Category:CS1 location test]]
[[Category:Created On 08/07/2023]]
[[Category:Created On 08/07/2023]]
[[Category:Vigyan Ready]]
[[Category:Lua-based templates]]
[[Category:Machine Translated Page]]
[[Category:Pages with script errors]]
[[Category:Templates Vigyan Ready]]
[[Category:Templates that add a tracking category]]
[[Category:Templates that generate short descriptions]]
[[Category:Templates using TemplateData]]
[[Category:Wikipedia articles needing page number citations from January 2020]]
[[Category:अंक प्रणाली]]
[[Category:बाइनरी अंकगणित]]

Latest revision as of 14:53, 17 October 2023

ऑफसेट बाइनरी,[1] जिसे अतिरिक्त-K,[1]अतिरिक्त-N, अतिरिक्त-e,[2][3]अतिरिक्त कोड या अभिनत प्रतिरूपण, के रूप में भी जाना जाता है, वह हस्ताक्षरित संख्या प्रतिरूपण के लिए एक विधि है जहां एक हस्ताक्षरित संख्या n को अहस्ताक्षरित संख्या n+K के अनुरूप द्वयंक प्रतिरूप द्वारा दर्शाया जाता है, जहाँ K पूर्वाग्रह मान या ऑफ़सेट होता है। ऑफसेट बाइनरी के लिए कोई मानक नहीं है, लेकिन प्रायः एन-बिट बाइनरी शब्द के लिए K, K=2n−1होता है (उदाहरण के लिए, चार अंकों वाली बाइनरी संख्या के लिए ऑफसेट 23=8 होगा)। इसका परिणाम यह होता है कि न्यूनतम ऋणात्मक मान को सभी-शून्य द्वारा दर्शाया जाता है, तथा शून्य मान को सबसे महत्वपूर्ण बिट में 1 और अन्य सभी बिट्स में शून्य द्वारा दर्शाया जाता है, और अधिकतम धनात्मक मान को सभी-बिट द्वारा दर्शाया जाता है (सुविधाजनक रूप से, यह यह दो के पूरक का उपयोग करने के समान है लेकिन सबसे महत्वपूर्ण बिट व्युत्क्रमित है)। इसका परिणाम यह भी होता है कि एक तार्किक तुलना संचालन में, एक वास्तविक स्वरूपी संख्यात्मक तुलना संचालन के समान परिणाम मिलता है, जबकि दो का पूरक संकेतन में एक तार्किक तुलना केवल तभी सहमत होगी जब केवल तुलना की जा रही संख्याएँ एक ही चिह्न वाली हों। अन्यथा तुलना का अर्थ व्युत्क्रमित हो जाएगा, जिससे सभी ऋणात्मक मूल्यों को सभी धनात्मक मूल्यों से बड़ा मान लिया जाएगा।

प्रारंभिक तुल्यकालिक बहुसंकेतन टेलीग्राफ में उपयोग किए जाने वाले 5-बिट बॉडॉट कोड को ऑफसेट-1 (अतिरिक्त-1) प्रतिबिंबित बाइनरी (ग्रे) कोड के रूप में देखा जा सकता है।

ऑफसेट-64 (अतिरिक्त-64) संकेतन का एक ऐतिहासिक रूप से प्रमुख उदाहरण आईबीएम प्रणाली/360 और प्रणाली/370 पीढ़ी के कंप्यूटरों में चल बिन्दु (चरघातांकी) संकेतन में था। विशेषता (चर घातांक) ने सात-बिट अतिरिक्त-64 संख्या का रूप ले लिया (उसी बाइट के उच्च-क्रम बिट में महत्व का चिह्न सम्मिलित था)।[4]

माइक्रोसॉफ्ट बाइनरी प्रारूप में 8-बिट चर घातांक, 1970 और 1980 के दशक में विभिन्न प्रोग्रामिंग भाषाओं (विशेष रूप से आधारभूत) में उपयोग किया जाने वाले एक चल बिन्दु प्रारूप के रूप में, ऑफसेट-129 संकेतन (अतिरिक्त-129) का उपयोग करके कूटबद्‍ध किया गया था।

चल बिन्दु अंकगणित के लिए IEEE मानक (IEEE 754) परिशुद्धता के अपने विभिन्न प्रारूपों में से प्रत्येक में घातांक भाग के लिए ऑफसेट संकेतन का उपयोग करता है। हालाँकि, असामान्य रूप से, अतिरिक्त 2n−1 का उपयोग करने के बजाय यह अतिरिक्त 2 n−1 − 1 (अर्थात अतिरिक्त-15, अतिरिक्त-127, अतिरिक्त-1023, अतिरिक्त-16383) का उपयोग करता है जिसका अर्थ है कि घातांक के अग्रणी (उच्च-क्रम) बिट को उलटने से घातांक दो के पूरक संकेतन को सही करने में परिवर्तित नहीं होगा।

ऑफसेट बाइनरी का उपयोग प्रायः अंकीय संकेत प्रक्रमण (डीएसपी) में किया जाता है। अधिकांश अनुरूप से अंकीय (A/D) और अंक से अनुरूप रूपांतरित्र (D/A) चिप्स एकध्रुवीय होते हैं, जिसका अर्थ है कि वे द्विध्रुवी संकेतों (धनात्मक और ऋणात्मक दोनों मूल्यों वाले संकेत) को संभाल नहीं सकते हैं। इसका एक सरल समाधान ए/डी और डी/ए परिवर्तक की सीमा के आधे के बराबर डीसी ऑफसेट के साथ अनुरूप संकेत को पूर्वाग्रहित करना है। परिणामी डिजिटल डेटा अंततः ऑफसेट बाइनरी प्रारूप में समाप्त हो जाता है।[5]

अधिकांश मानक कंप्यूटर सीपीयू चिप्स ऑफसेट बाइनरी प्रारूप को सीधे संभाल नहीं सकते हैं। सीपीयू चिप्स सामान्य तौर पर केवल हस्ताक्षरित और अहस्ताक्षरित पूर्णांक, और चल बिन्दु मान प्रारूपों को संभाल सकते हैं। इन सीपीयू चिप्स द्वारा ऑफसेट बाइनरी मानों को कई तरीकों से नियंत्रित किया जा सकता है। डेटा को केवल अहस्ताक्षरित पूर्णांक के रूप में माना जा सकता है, जिससे प्रोग्रामर को सॉफ़्टवेयर में शून्य ऑफसेट का सामना करने की आवश्यकता होती है। डेटा को केवल शून्य ऑफसेट घटाकर हस्ताक्षरित पूर्णांक प्रारूप (जिसे सीपीयू मूल रूप से संभाल सकता है) में परिवर्तित किया जा सकता है। एक n-बिट शब्द के लिए सबसे सामान्य ऑफसेट 2n−1 होने के परिणामस्वरूप, जिसका अर्थ है कि पहला बिट दो के पूरक के सापेक्ष व्युत्क्रमित है, तथा एक अलग घटाव चरण की कोई आवश्यकता नहीं है, लेकिन कोई व्यक्ति पहले बिट को व्युत्क्रमित कर सकता है। यह कभी-कभी हार्डवेयर में उपयोगी सरलीकरण होता है, और सॉफ्टवेयर में भी सुविधाजनक हो सकता है।

तुलना के लिए दो के पूरक के साथ, चार बिट्स के लिए ऑफसेट बाइनरी की तालिका,[6]

दशमलव ऑफसेट बाइनरी,
K = 8
दो के

पूरक

7 1111 0111
6 1110 0110
5 1101 0101
4 1100 0100
3 1011 0011
2 1010 0010
1 1001 0001
0 1000 0000
−1 0111 1111
−2 0110 1110
−3 0101 1101
−4 0100 1100
−5 0011 1011
−6 0010 1010
−7 0001 1001
−8 0000 1000

ऑफसेट बाइनरी को सबसे महत्वपूर्ण बिट को व्युत्क्रमित करके दो के पूरक में परिवर्तित किया जा सकता है। उदाहरण के लिए, 8-बिट मानों के साथ, ऑफसेट बाइनरी मान को दो के पूरक में परिवर्तित करने के लिए 0x80 के साथ XORed किया जा सकता है। विशिष्ट हार्डवेयर में बिट को उसके मूल रूप में स्वीकार करना आसान हो सकता है, साथ ही इसके मूल्य को व्युत्क्रमित महत्व में लागू करना भी आसान हो सकता है।

संबंधित कोड

[2][3][7]
कोड तुलना[2][3][7]
कोड प्रकार प्राचल भार दूरी जाँच पूरक 5 के समूह सरल जोड़
ऑफसेट, k चौड़ाई, n गुणक, q
8421 कोड n[8] 0 4 1 8 4 2 1 1–4 नहीं नहीं नहीं नहीं
न्यूडिंग कोड[8][9] 3n + 2[8] 2 5 3 2–5 हाँ 9 हाँ हाँ
स्टिबिट्ज़ कोड[10] n + 3[8] 3 4 1 8  4 −2 −1 1–4 नहीं 9 हाँ हाँ
डायमंड कोड[8][11] 27n + 6[8][12][13] 6 8 27 3–8 हाँ 9 हाँ हाँ
25n + 15[12][13] 15 8 25 3+ हाँ हाँ ? हाँ
23n + 24[12][13] 24 8 23 3+ हाँ हाँ ? हाँ
19n + 42[12][13] 42 8 19 3–8 हाँ 9 हाँ हाँ
दशमलव
 
0
1
2
3
4
5
6
7
8
9
8421
4 3 2 1
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
स्टिबिट्ज़[10]
4 3 2 1
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
न्यूडिंग [8][9]
5 4 3 2 1
0 0 0 1 0
0 0 1 0 1
0 1 0 0 0
0 1 0 1 1
0 1 1 1 0
1 0 0 0 1
1 0 1 0 0
1 0 1 1 1
1 1 0 1 0
1 1 1 0 1
डायमंड[8]
8 7 6 5 4 3 2 1
0 0 0 0 0 1 1 0
0 0 1 0 0 0 0 1
0 0 1 1 1 1 0 0
0 1 0 1 0 1 1 1
0 1 1 1 0 0 1 0
1 0 0 0 1 1 0 1
1 0 1 0 1 0 0 0
1 1 0 0 0 0 1 1
1 1 0 1 1 1 1 0
1 1 1 1 1 0 0 1
19n + 42[12][13]
8 7 6 5 4 3 2 1
0 0 1 0 1 0 1 0
0 0 1 1 1 1 0 1
0 1 0 1 0 0 0 0
0 1 1 0 0 0 1 1
0 1 1 1 0 1 1 0
1 0 0 0 1 0 0 1
1 0 0 1 1 1 0 0
1 0 1 0 1 1 1 1
1 1 0 0 0 0 1 0
1 1 0 1 0 1 0 1

यह भी देखें

संदर्भ

  1. 1.0 1.1 Chang, Angela; Chen, Yen; Delmas, Patrice (2006-03-07). "2.5.2: Data Representation: Offset binary representation (Excess-K)". COMPSCI 210S1T 2006 (PDF). Department of Computer Science, The University of Auckland, NZ. p. 18. Retrieved 2016-02-04.
  2. 2.0 2.1 2.2 Dokter, Folkert; Steinhauer, Jürgen (1973-06-18).