ऑफसेट बाइनरी

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

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

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

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

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

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

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

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

संबंधित कोड

 * $$z = \frac{1}{q}\left[\left(\sum_{i=1}^n p_i \times b_i\right) - k\right]$$

यह भी देखें

 * हस्ताक्षरित संख्या अभ्यावेदन
 * द्विआधारी संख्या
 * अतिरिक्त-3
 * अतिरिक्त-128
 * प्रतिपादक पूर्वाग्रह
 * अतिरिक्त-ग्रे कोड
 * अपनों का पूरक
 * द्विआधारी ऑफसेट वाहक

अग्रिम पठन

 * (NB. Mentions Excess-3, Excess-6, Excess-11, Excess-123.)
 * (NB. Mentions Excess-25, Excess-250.)
 * (NB. Mentions Excess-32, Excess-64, Excess-128, Excess-256, Excess-976, Excess-1023, Excess-1024, Excess-2048, Excess-16384.)
 * (NB. Mentions Excess-64, Excess-500, Excess-512, Excess-1024.)
 * (NB. Mentions Excess-64, Excess-500, Excess-512, Excess-1024.)