एक गैर-ऋणात्मक पूर्णांक का अधिकतम मान तब प्राप्त होता है जब सभी कोशिकाओं में एक पूर्णांक होता है। एन-बिट प्रतिनिधित्व के लिए यह बराबर होगा
गैर-ऋणात्मक पूर्णांक. न्यूनतम संख्या मेमोरी सेल के आठ बिट्स में संग्रहीत आठ शून्य से मेल खाती है और शून्य के बराबर है। अधिकतम संख्या आठ इकाइयों से मेल खाती है और इसके बराबर है
ए = 1 × 2 7 + 1 × 2 6 + 1 × 2 5 + 1 × 2 4 + 1 × 2 3 + 1 × 2 2 + 1 × 2 1 + 1 × 2 0 = 1 × 2 8 - 1 = 255 10 .
परिवर्तन की सीमा गैर-ऋणात्मक पूर्णांकसंख्याएँ: 0 से 255 तक.
भंडारण के लिए हस्ताक्षरित पूर्णांकदो मेमोरी सेल (16 बिट) आवंटित किए जाते हैं, और सबसे महत्वपूर्ण (बाएं) बिट को संख्या के चिह्न के लिए आवंटित किया जाता है (यदि संख्या सकारात्मक है, तो 0 को चिह्न बिट पर लिखा जाता है, यदि संख्या नकारात्मक है - 1) .
साइन-परिमाण प्रारूप का उपयोग करके कंप्यूटर में सकारात्मक संख्याओं का प्रतिनिधित्व कहा जाता है प्रत्यक्ष कोडनंबर. उदाहरण के लिए, संख्या 2002 10 = 11111010010 2 को 16-बिट प्रारूप में निम्नानुसार दर्शाया जाएगा:
0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 |
एन-बिट प्रतिनिधित्व में हस्ताक्षरित पूर्णांकों के लिए अधिकतम सकारात्मक संख्या (प्रति चिह्न एक अंक के आवंटन की अनुमति) है:
ऋणात्मक संख्याओं को दर्शाने के लिए उपयोग किया जाता है अतिरिक्त कोड. अतिरिक्त कोड आपको घटाव के अंकगणितीय ऑपरेशन को अतिरिक्त ऑपरेशन से बदलने की अनुमति देता है, जो प्रोसेसर के काम को काफी सरल बनाता है और इसके प्रदर्शन को बढ़ाता है।
n कोशिकाओं में संग्रहीत ऋणात्मक संख्या A का पूरक कोड 2 n - |A| है।
दो का पूरक एक ऋणात्मक संख्या A से 0 के मापांक को जोड़ने का प्रतिनिधित्व करता है, क्योंकि n-बिट कंप्यूटर अंकगणित में:
2 एन - |ए| + |ए| = 0,
चूंकि कंप्यूटर में एन-बिट अंकगणित 2 एन = 0 है। वास्तव में, ऐसी संख्या के द्विआधारी प्रतिनिधित्व में एक और एन शून्य होते हैं, और केवल एन निम्न-क्रम अंक, यानी एन शून्य, एन-बिट में फिट हो सकते हैं कक्ष।
किसी ऋणात्मक संख्या का पूरक कोड प्राप्त करने के लिए, आप काफी सरल एल्गोरिदम का उपयोग कर सकते हैं:
1. संख्या का मापांक लिखें प्रत्यक्ष कोड n बाइनरी अंकों में.
2. प्राप्त करें वापसी कोडसंख्याएँ, इस मान के लिए, सभी बिट्स को उल्टा करें (सभी को शून्य से बदलें और सभी शून्य को एक से बदलें)।
3. परिणामी रिवर्स कोड में एक जोड़ें।
आइए 16-बिट कंप्यूटर प्रतिनिधित्व के लिए नकारात्मक संख्या -2002 का अतिरिक्त कोड लिखें:
जब दो के पूरक कोड में एक नकारात्मक संख्या ए का एन-बिट प्रतिनिधित्व उपयोग किया जाता है, तो संख्या (एक) के चिह्न को संग्रहीत करने के लिए सबसे महत्वपूर्ण बिट आवंटित किया जाता है। शेष अंक धनात्मक संख्याओं के रूप में लिखे जाते हैं।
किसी संख्या के सकारात्मक होने के लिए, निम्नलिखित शर्त सत्य होनी चाहिए:
|ए| £2 एन-1 .
इसलिए, एम-अंक प्रतिनिधित्व में संख्या ए के मापांक का अधिकतम मान बराबर है:
तो न्यूनतम ऋणात्मक संख्या है:
आइए उन संख्याओं की श्रेणी को परिभाषित करें जिन्हें संग्रहीत किया जा सकता है रैंडम एक्सेस मेमोरीप्रारूप में लंबे हस्ताक्षरित पूर्णांक(ऐसे नंबरों को संग्रहीत करने के लिए चार मेमोरी सेल आवंटित किए गए हैं - 32 बिट्स)।
अधिकतम धनात्मक पूर्णांक (प्रति चिह्न एक अंक के आवंटन को ध्यान में रखते हुए) इसके बराबर है:
ए = 2 31 - 1 = 2 147 483 647 10.
न्यूनतम ऋणात्मक पूर्णांक है:
ए = -2 31 = - 2 147 483 648 10.
संख्याओं को प्रारूप में प्रस्तुत करने के लाभ नियत बिन्दुसंख्याओं के प्रतिनिधित्व की सरलता और स्पष्टता के साथ-साथ अंकगणितीय परिचालनों को लागू करने के लिए एल्गोरिदम की सरलता भी शामिल है।
संख्याओं को प्रारूप में प्रस्तुत करने का नुकसान नियत बिन्दुमात्राओं के प्रतिनिधित्व की एक छोटी श्रृंखला है, जो गणितीय, भौतिक, आर्थिक और अन्य समस्याओं को हल करने के लिए अपर्याप्त है जिसमें बहुत छोटी और बहुत बड़ी दोनों संख्याओं का उपयोग किया जाता है।
फ़्लोटिंग पॉइंट प्रारूप में संख्याओं का प्रतिनिधित्व।वास्तविक संख्याओं को प्रारूप में कंप्यूटर में संग्रहीत और संसाधित किया जाता है तैरनेवाला स्थल. इस स्थिति में, संख्या में दशमलव बिंदु की स्थिति बदल सकती है।
संख्या स्वरूप तैरनेवाला स्थलघातीय अंकन पर आधारित है, जिसमें किसी भी संख्या को दर्शाया जा सकता है। तो संख्या A को इस प्रकार दर्शाया जा सकता है:
ए = एम × क्यू एन | 2.3 |
जहाँ m संख्या का मंटिसा है;
क्यू - संख्या प्रणाली का आधार;
n - संख्या क्रम.
संख्याओं की एकसमान प्रस्तुति के लिए तैरनेवाला स्थलएक सामान्यीकृत रूप का उपयोग किया जाता है जिसमें मंटिसा शर्त को पूरा करता है:
1/n £ |m|
इसका मतलब यह है कि मंटिसा एक उचित अंश होना चाहिए और दशमलव बिंदु के बाद एक गैर-शून्य अंक होना चाहिए।
आइए प्राकृतिक रूप में लिखी गई दशमलव संख्या 555.55 को सामान्यीकृत मंटिसा के साथ घातांकीय रूप में परिवर्तित करें:
555.55 = 0.55555 × 10 3.
यहां सामान्यीकृत मंटिसा है: एम = 0.55555, क्रम: एन = 3।
फ़्लोटिंग पॉइंट प्रारूप में एक संख्या 4 ( सामान्य परिशुद्धता संख्या) या 8 बाइट्स ( दोहरी परिशुद्धता संख्या). फ़्लोटिंग पॉइंट नंबर लिखते समय, मंटिसा साइन, एक्सपोनेंट साइन, एक्सपोनेंट और मंटिसा को स्टोर करने के लिए बिट्स आवंटित किए जाते हैं।
संख्याओं में परिवर्तन की सीमा संख्या के क्रम को संग्रहीत करने के लिए आवंटित अंकों की संख्या और सटीकता (संख्या) से निर्धारित होती है महत्वपूर्ण लोग) मंटिसा को स्टोर करने के लिए आवंटित बिट्स की संख्या से निर्धारित होता है।
आइए प्रारूप के लिए अधिकतम संख्या और उसकी सटीकता निर्धारित करें सामान्य परिशुद्धता संख्याएँ, यदि ऑर्डर और उसके चिह्न को संग्रहीत करने के लिए 8 बिट्स आवंटित किए गए हैं, और मंटिसा और उसके चिह्न को संग्रहीत करने के लिए 24 बिट्स आवंटित किए गए हैं:
0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
हस्ताक्षर करें और आदेश दें | साइन और मंटिसा |
संख्या के क्रम का अधिकतम मान 1111111 2 = 127 10 होगा, और इसलिए संख्या का अधिकतम मान होगा:
2 127 = 1.7014118346046923173168730371588 × 10 38।
एक धनात्मक मंटिसा का अधिकतम मान है:
2 23 - 1 » 2 23 = 2 (10 × 2.3) » 1000 2.3 = 10 (3 × 2.3) » 10 7.
इस प्रकार अधिकतम मूल्य सामान्य परिशुद्धता संख्याएँगणना की संभावित सटीकता को ध्यान में रखते हुए, यह 1.701411 × 10 38 होगा (इस मामले में दशमलव संख्या के महत्वपूर्ण अंकों की संख्या 7 अंकों तक सीमित है)।
कार्य
1.26. 16-बिट नोटेशन में आगे, पीछे और पूरक कोड में नकारात्मक दशमलव संख्याएँ लिखकर तालिका भरें:
1.27. दृश्य सीमा को परिभाषित करें हस्ताक्षरित पूर्णांक(मेमोरी के 2 बाइट्स आवंटित किए गए हैं) निश्चित बिंदु प्रारूप में।
1.28. प्रारूप के लिए अधिकतम संख्या और उसकी सटीकता निर्धारित करें दोहरी परिशुद्धता संख्या, यदि ऑर्डर और उसके चिह्न को संग्रहीत करने के लिए 11 बिट्स आवंटित किए गए हैं, और मंटिसा और उसके चिह्न को संग्रहीत करने के लिए 53 बिट्स आवंटित किए गए हैं।
गणितीय गणनाओं में वास्तविक संख्याओं का संख्या प्रतिनिधित्व की सीमा और सटीकता पर कोई प्रतिबंध नहीं है। हालाँकि, कंप्यूटर में, संख्याओं को सीमित संख्या में अंकों के साथ रजिस्टरों और मेमोरी स्थानों में संग्रहीत किया जाता है। इसीलिए शुद्धताप्रतिनिधित्व वास्तविक संख्या,एक कार में कल्पना की जा सकती है, परिमित है और दायरा सीमित है।
प्रोग्रामों में वास्तविक संख्याएँ लिखते समय, सामान्य अल्पविराम के स्थान पर बिंदु का उपयोग करने की प्रथा है। किसी भी वास्तविक संख्या को संख्या प्रणाली के मूलांक क्रम के साथ संख्याओं के रूप में दर्शाया जा सकता है।
उदाहरण 4.4.संख्या प्रणाली के मूलांक क्रम के साथ संख्याओं को लिखने के रूप में दशमलव संख्या 1.756 को निम्नानुसार दर्शाया जा सकता है:
1.756 . 10 0 = 0.1756 . 10 1 = 0.01756 . 10 2 = ...
17.56 . 10 -1 = 175.6 . 10 -2 = 1756.0 . 10 -3 = ... .
फ़्लोटिंग पॉइंट प्रतिनिधित्व संख्या प्रतिनिधित्व कहा जाता है एन आधार के साथ एक संख्या प्रणाली में क्यू जैसा :
एन = एम*. क्यू पी ,
कहाँ एम - एक गुणक जिसमें संख्या के सभी अंक (मेंटिसा) होते हैं, पी - एक पूर्णांक जिसे ऑर्डर कहा जाता है।
यदि "फ़्लोटिंग" बिंदु पहले महत्वपूर्ण अंक से पहले मंटिसा में स्थित है, तो मंटिसा के लिए आवंटित अंकों की एक निश्चित संख्या के साथ, संख्या के महत्वपूर्ण अंकों की अधिकतम संख्या दर्ज की जाती है, यानी संख्या की अधिकतम सटीकता मशीन में प्रतिनिधित्व.
यदि मंटिसा में बिंदु (अल्पविराम) के बाद का पहला अंक शून्य से भिन्न हो, तो ऐसी संख्या कहलाती है सामान्यीकृत .
मंटिसा और ऑर्डर क्यू मूलांक प्रणाली में -ary संख्या लिखने की प्रथा है क्यू , और आधार स्वयं दशमलव प्रणाली में है।
उदाहरण 4.5.दशमलव प्रणाली में किसी संख्या के सामान्यीकृत प्रतिनिधित्व के उदाहरण यहां दिए गए हैं:
2178.01 =0.217801 * 10 4
0.0045 =0.45 * 10 -2
बाइनरी में उदाहरण:
10110.01= 0.1011001 * 2 101 (क्रम 101 2 = 5 10)
आधुनिक कंप्यूटर वास्तविक फ़्लोटिंग-पॉइंट नंबरों को संग्रहीत करने के लिए कई अंतरराष्ट्रीय मानक प्रारूपों का समर्थन करते हैं, जो परिशुद्धता में भिन्न होते हैं, लेकिन उन सभी की संरचना समान होती है। एक वास्तविक संख्या तीन भागों में संग्रहीत होती है: मंटिसा का चिह्न, स्थानांतरित क्रम और मंटिसा:
विशेषता एन-बिट सामान्यीकृत संख्या की गणना निम्नानुसार की जाती है: यदि ऑर्डर आवंटित किया गया है कअंक, फिर दोनों के पूरक कोड में दर्शाए गए क्रम के वास्तविक मूल्य में (2 k -1 -1) के बराबर एक ऑफसेट जोड़ा जाता है।
इस प्रकार, -128 से +127 की सीमा में मान लेने वाला एक आदेश 0 से 255 की सीमा में एक पक्षपाती क्रम में परिवर्तित हो जाता है। पक्षपाती आदेश को एक अहस्ताक्षरित संख्या के रूप में संग्रहीत किया जाता है, जो आदेशों की तुलना, जोड़ और घटाव संचालन को सरल बनाता है , और सामान्यीकृत संख्याओं के तुलना संचालन को भी सरल बनाता है।
ऑर्डर के लिए आवंटित अंकों की संख्या सबसे छोटी गैर-शून्य संख्या से लेकर दिए गए प्रारूप में मशीन में प्रदर्शित होने वाली सबसे बड़ी संख्या तक की सीमा को प्रभावित करती है। जाहिर है, मंटिसा को जितने अधिक अंक आवंटित किए जाएंगे, संख्या प्रतिनिधित्व की सटीकता उतनी ही अधिक होगी। इस तथ्य के कारण कि सामान्यीकृत वास्तविक संख्याओं के लिए मंटिसा का सबसे महत्वपूर्ण बिट हमेशा 1 होता है, यह सबसे महत्वपूर्ण बिट मेमोरी में संग्रहीत नहीं होता है।
कोई भी द्विआधारी पूर्णांक जिसमें अधिकतम हो एमअंकों को बिना किसी विरूपण के वास्तविक प्रारूप में परिवर्तित किया जा सकता है।
तालिका 4.3. वास्तविक संख्याओं को दर्शाने के लिए मानक प्रारूप
उदाहरण 4.6.एकल प्रारूप में सामान्यीकृत संख्याओं का प्रतिनिधित्व।
आइए देखें कि संख्या 37.16 10 को कैसे संग्रहीत किया जाएगा। बाइनरी संख्या में परिवर्तित करते समय, 100101,(00101000111101011100) का सटीक अनुवाद नहीं होता है - कोष्ठक में संलग्न भिन्नात्मक भाग को अवधि में दोहराया जाता है।
हम संख्या को सामान्यीकृत रूप में परिवर्तित करते हैं: 0.100101(00101000111101011100) * 2 110
आइए 32-बिट प्रारूप में एक वास्तविक संख्या का प्रतिनिधित्व करें:
1. संख्या का चिन्ह "+" है, इसलिए हम चिन्ह बिट (31) में 0 दर्ज करते हैं;
2. ऑर्डर सेट करने के लिए, 8 बिट्स आवंटित किए गए हैं; पूरक कोड में प्रस्तुत ऑर्डर के वास्तविक मूल्य में, हम ऑफसेट (2 7 -1) = 127 जोड़ते हैं। चूंकि ऑर्डर सकारात्मक है, प्रत्यक्ष ऑर्डर कोड अतिरिक्त ऑर्डर के साथ मेल खाता है, आइए स्थानांतरित ऑर्डर की गणना करें: 00000110 + 01111111=10000101
हम परिणामी स्थानांतरित क्रम दर्ज करते हैं।
3. हम मंटिसा के सबसे महत्वपूर्ण अंक को हटाते हुए मंटिसा में प्रवेश करते हैं (यह हमेशा 1 के बराबर होता है);
स्थानांतरित आदेश |
अपूर्णांश |
इस उदाहरण में, हम केवल 24 बिट्स स्थानांतरित करने में सक्षम थे; बाकी संख्या का प्रतिनिधित्व करने में सटीकता के नुकसान के साथ खो गए थे।
| शैक्षणिक वर्ष के लिए पाठों की योजना बनाना (एफएसईएस) | § 1.2. कंप्यूटर में संख्याओं का प्रतिनिधित्व करना
पाठ 6 - 7
§ 1.2. कंप्यूटर में संख्याओं का प्रतिनिधित्व करना
कीवर्ड:
स्राव होना
अहस्ताक्षरित पूर्णांक प्रतिनिधित्व
हस्ताक्षरित पूर्णांक प्रतिनिधित्व
वास्तविक संख्याओं का प्रतिनिधित्व
1.2.1. पूर्णांक प्रतिनिधित्व
एक कंप्यूटर की रैम में कोशिकाएँ होती हैं, जिनमें से प्रत्येक एक भौतिक प्रणाली होती है जिसमें एक निश्चित संख्या में सजातीय तत्व होते हैं। इन तत्वों की दो स्थिर अवस्थाएँ होती हैं, जिनमें से एक शून्य से मेल खाती है, और दूसरी एक से। ऐसे प्रत्येक तत्व का उपयोग बिट्स में से एक को संग्रहीत करने के लिए किया जाता है - बाइनरी संख्या का एक अंक। इसीलिए प्रत्येक कोशिका तत्व को बिट या अंक कहा जाता है (चित्र 1.2)।
चावल। 1.2. मेमोरी सेल
पूर्णांकों के कंप्यूटर प्रतिनिधित्व के लिए, कई अलग-अलग तरीकों का उपयोग किया जाता है, जो अंकों की संख्या में एक दूसरे से भिन्न होते हैं (पूर्णांक को आमतौर पर 8, 16, 32 या 64 अंक आवंटित किए जाते हैं) और एक संकेत अंक की उपस्थिति या अनुपस्थिति। अहस्ताक्षरित प्रतिनिधित्व का उपयोग केवल गैर-नकारात्मक पूर्णांकों के लिए किया जा सकता है; नकारात्मक संख्याओं को केवल हस्ताक्षरित रूप में दर्शाया जा सकता है।
अहस्ताक्षरित प्रतिनिधित्व का उपयोग ऑब्जेक्ट जैसे सेल पते, विभिन्न काउंटर (उदाहरण के लिए, पाठ में वर्णों की संख्या), साथ ही दिनांक और समय, आकार को इंगित करने वाली संख्याओं के लिए किया जाता है। ग्राफिक छवियांपिक्सेल आदि में
एक गैर-नकारात्मक पूर्णांक का अधिकतम मान तब प्राप्त होता है जब सेल के सभी बिट्स में एक होता है। एन-बिट प्रतिनिधित्व के लिए यह 2 एन -1 के बराबर होगा। न्यूनतम संख्या मेमोरी के n बिट्स में संग्रहीत n शून्य से मेल खाती है और शून्य के बराबर है।
अहस्ताक्षरित एन-बिट पूर्णांकों के लिए अधिकतम मान निम्नलिखित हैं:
किसी अहस्ताक्षरित पूर्णांक का कंप्यूटर प्रतिनिधित्व प्राप्त करने के लिए, बस संख्या को इसमें परिवर्तित करें बायनरी सिस्टमअंकन करें और बाईं ओर परिणामी परिणाम को शून्य से मानक अंक क्षमता तक पूरक करें।
उदाहरण 1. आठ अंकों के प्रतिनिधित्व में संख्या 53 10 = 110101 2 का रूप इस प्रकार है:
वही संख्या 53 सोलह अंकों में इस प्रकार लिखी जाएगी:
जब किसी चिह्न के साथ दर्शाया जाता है, तो सबसे महत्वपूर्ण (बाएं) अंक को संख्या के चिह्न को सौंपा जाता है, शेष अंक को संख्या को ही सौंपा जाता है। यदि संख्या सकारात्मक है, तो 0 को साइन बिट में रखा गया है, यदि संख्या नकारात्मक है - 1. संख्याओं के इस प्रतिनिधित्व को प्रत्यक्ष कोड कहा जाता है।
कंप्यूटर में, सकारात्मक संख्याओं पर संचालन करने के लिए भंडारण उपकरणों में सकारात्मक संख्याओं को संग्रहीत करने के लिए प्रत्यक्ष कोड का उपयोग किया जाता है।
सूचना और शैक्षिक संसाधनों के लिए संघीय केंद्र की वेबसाइट (http://fcior.edu.ru/) में सूचना मॉड्यूल "नंबर और उसका कंप्यूटर कोड" शामिल है। इस संसाधन से आप प्राप्त कर सकते हैं अतिरिक्त जानकारीअध्ययन किये जा रहे विषय पर.
ऋणात्मक संख्याओं पर संचालन करने के लिए, घटाव संचालन को जोड़ से बदलने के लिए अतिरिक्त कोड का उपयोग किया जाता है। आप संघीय सूचना और शैक्षिक संसाधन केंद्र (http://fcior.edu.ru/) की वेबसाइट पर स्थित सूचना मॉड्यूल "अतिरिक्त कोड" का उपयोग करके अतिरिक्त कोड उत्पन्न करने के लिए एल्गोरिदम का पता लगा सकते हैं।
1.2.2. वास्तविक संख्याओं का प्रतिनिधित्व
किसी भी वास्तविक संख्या A को घातांकीय रूप में लिखा जा सकता है:
कहाँ:
एम - संख्या का मंटिसा;
पी - संख्या क्रम.
उदाहरण के लिए, संख्या 472 एलएलसी एलएलसी को निम्नानुसार दर्शाया जा सकता है: 4.72 10 8, 47.2 10 7, 472.0 10 6, आदि।
कैलकुलेटर का उपयोग करके गणना करते समय आपने संख्याओं को लिखने के घातीय रूप का सामना किया होगा, जब आपको उत्तर के रूप में निम्नलिखित फॉर्म की प्रविष्टियाँ प्राप्त होंगी: 4.72E+8।
यहां, चिह्न "ई" दशमलव संख्या प्रणाली के आधार को दर्शाता है और इसे "दस की घात से गुणा करें" के रूप में पढ़ा जाता है।
उपरोक्त उदाहरण से आप देख सकते हैं कि किसी संख्या में दशमलव बिंदु की स्थिति बदल सकती है।
स्थिरता के लिए, मंटिसा को आमतौर पर दशमलव बिंदु के बाद एक गैर-शून्य अंक के साथ उचित अंश के रूप में लिखा जाता है। इस मामले में, संख्या 472 LLC LLC को 0.472 10 9 के रूप में दर्शाया जाएगा।
एक वास्तविक संख्या कंप्यूटर मेमोरी में 32 या 64 बिट्स पर कब्जा कर सकती है। इस मामले में, मंटिसा साइन, ऑर्डर साइन, ऑर्डर और मंटिसा को स्टोर करने के लिए बिट्स आवंटित किए जाते हैं।
उदाहरण:
वास्तविक संख्याओं के प्रतिनिधित्व की सीमा संख्या के क्रम को संग्रहीत करने के लिए आवंटित बिट्स की संख्या से निर्धारित होती है, और सटीकता मंटिसा को संग्रहीत करने के लिए आवंटित बिट्स की संख्या से निर्धारित होती है।
उपरोक्त उदाहरण के लिए संख्या क्रम का अधिकतम मान 1111111 2 = 127 10 है, और इसलिए संख्या का अधिकतम मान है:
0,11111111111111111111111 10 1111111
स्वयं यह जानने का प्रयास करें कि इस मान का दशमलव समतुल्य क्या है।
वैज्ञानिक और इंजीनियरिंग समस्याओं को हल करने के लिए वास्तविक संख्याओं के प्रतिनिधित्व की एक विस्तृत श्रृंखला महत्वपूर्ण है। साथ ही, यह समझा जाना चाहिए कि ऐसी संख्याओं को संसाधित करने के लिए एल्गोरिदम पूर्णांकों को संसाधित करने के लिए एल्गोरिदम की तुलना में अधिक श्रम-गहन हैं।
सबसे महत्वपूर्ण
कंप्यूटर पर पूर्णांकों का प्रतिनिधित्व करने के लिए, कई अलग-अलग तरीकों का उपयोग किया जाता है, जो अंकों की संख्या (8, 16, 32 या 64) और एक संकेत अंक की उपस्थिति या अनुपस्थिति में एक दूसरे से भिन्न होते हैं।
एक अहस्ताक्षरित पूर्णांक का प्रतिनिधित्व करने के लिए, इसे बाइनरी संख्या प्रणाली में परिवर्तित किया जाना चाहिए और परिणामी परिणाम को मानक क्षमता के अनुसार शून्य के साथ बाईं ओर गद्देदार किया जाना चाहिए।
जब किसी चिह्न के साथ प्रदर्शित किया जाता है, तो सबसे महत्वपूर्ण अंक संख्या के चिह्न को निर्दिष्ट किया जाता है, शेष अंक संख्या को ही निर्दिष्ट किए जाते हैं। यदि संख्या सकारात्मक है, तो 0 को साइन बिट में रखा गया है; यदि संख्या नकारात्मक है, तो 1. सकारात्मक संख्याओं को कंप्यूटर में प्रत्यक्ष कोड में संग्रहीत किया जाता है, नकारात्मक संख्याओं को पूरक कोड में संग्रहीत किया जाता है।
कंप्यूटर में वास्तविक संख्याओं को संग्रहीत करते समय, संख्या के क्रम के चिह्न, स्वयं क्रम, मंटिसा और मंटिसा के चिह्न को संग्रहीत करने के लिए बिट्स आवंटित किए जाते हैं। इस स्थिति में, कोई भी संख्या इस प्रकार लिखी जाती है:
कहाँ:
एम - संख्या का मंटिसा;
क्यू - संख्या प्रणाली का आधार;
पी - संख्या क्रम.
प्रश्न और कार्य
1. पाठ्यपुस्तक के इलेक्ट्रॉनिक परिशिष्ट में शामिल पैराग्राफ के लिए प्रस्तुति सामग्री पढ़ें। प्रश्नों के उत्तर तैयार करते समय और असाइनमेंट पूरा करते समय इन सामग्रियों का उपयोग करें।
2. कंप्यूटर मेमोरी में धनात्मक और ऋणात्मक पूर्णांकों को कैसे दर्शाया जाता है?
3. किसी भी पूर्णांक को वास्तविक संख्या माना जा सकता है, लेकिन शून्य भिन्नात्मक भाग के साथ। पूर्णांकों के कंप्यूटर प्रतिनिधित्व के विशेष तरीकों की व्यवहार्यता का औचित्य सिद्ध करें।
4. संख्या 63 10 को अहस्ताक्षरित 8-बिट प्रारूप में प्रस्तुत करें।
5. हस्ताक्षरित 8-बिट प्रारूप में लिखे गए उनके प्रत्यक्ष कोड का उपयोग करके संख्याओं के दशमलव समकक्ष खोजें:
ए) 01001100;
बी) 00010101.
6. 443 8, 101010 2, 256 10 में से कौन सी संख्या 8-बिट प्रारूप में संग्रहीत की जा सकती है?
7. निम्नलिखित संख्याओं को प्राकृतिक रूप में लिखिए:
ए) 0.3800456 10 2;
बी) 0.245 · 10 -3;
ग) 1.256900ई+5;
घ) 9.569120ई-3।
8. संख्या 2010.0102 10 को पाँच लिखें विभिन्न तरीकेघातीय रूप में.
9. निम्नलिखित संख्याओं को सामान्यीकृत मंटिसा के साथ घातीय रूप में लिखें - एक उचित अंश जिसमें दशमलव बिंदु के बाद एक गैर-शून्य अंक होता है:
ए) 217.934 10;
बी) 75321 10;
ग) 0.00101 10.
10. इस पैराग्राफ में चर्चा की गई बुनियादी अवधारणाओं को जोड़ते हुए एक चित्र बनाएं।
संख्यात्मक डेटा को बाइनरी संख्या प्रणाली का उपयोग करके कंप्यूटर में संसाधित किया जाता है। संख्याओं को कंप्यूटर मेमोरी में बाइनरी कोड में संग्रहीत किया जाता है, अर्थात, शून्य और एक के अनुक्रम के रूप में, और निश्चित या फ्लोटिंग पॉइंट प्रारूप में दर्शाया जा सकता है।
पूर्णांकों को निश्चित-बिंदु प्रारूप में मेमोरी में संग्रहीत किया जाता है। संख्याओं को दर्शाने के लिए इस प्रारूप के साथ, गैर-नकारात्मक पूर्णांक संख्याओं को संग्रहीत करने के लिए आठ मेमोरी कोशिकाओं (8 बिट्स) से युक्त एक मेमोरी रजिस्टर आवंटित किया जाता है। मेमोरी सेल का प्रत्येक अंक हमेशा संख्या के समान अंक से मेल खाता है, और अल्पविराम सबसे कम महत्वपूर्ण अंक के बाद दाईं ओर और अंक ग्रिड के बाहर स्थित होता है। उदाहरण के लिए, संख्या 110011012 को मेमोरी रजिस्टर में निम्नानुसार संग्रहीत किया जाएगा:
तालिका 4
एक गैर-नकारात्मक पूर्णांक संख्या का अधिकतम मूल्य जिसे निश्चित-बिंदु प्रारूप में एक रजिस्टर में संग्रहीत किया जा सकता है, सूत्र से निर्धारित किया जा सकता है: 2n - 1, जहां n संख्या के अंकों की संख्या है। अधिकतम संख्या 28 - 1 = 25510 = 111111112 और न्यूनतम 010 = 000000002 के बराबर होगी। इस प्रकार, गैर-नकारात्मक पूर्णांक संख्याओं में परिवर्तन की सीमा 0 से 25510 तक होगी।
दशमलव प्रणाली के विपरीत, बाइनरी संख्या के कंप्यूटर प्रतिनिधित्व में बाइनरी संख्या प्रणाली में संख्या के संकेत को इंगित करने वाले प्रतीक नहीं होते हैं: सकारात्मक (+) या नकारात्मक (-), इसलिए, बाइनरी प्रणाली में हस्ताक्षरित पूर्णांक का प्रतिनिधित्व करने के लिए, दो संख्या प्रतिनिधित्व प्रारूपों का उपयोग किया जाता है: हस्ताक्षरित संख्या मान प्रारूप और दो का पूरक प्रारूप। पहले मामले में, हस्ताक्षरित पूर्णांकों को संग्रहीत करने के लिए दो मेमोरी रजिस्टर (16 बिट्स) आवंटित किए जाते हैं, और सबसे महत्वपूर्ण अंक (सबसे बाईं ओर) का उपयोग संख्या के संकेत के रूप में किया जाता है: यदि संख्या सकारात्मक है, तो साइन बिट पर 0 लिखा जाता है , यदि संख्या ऋणात्मक है, तो 1. उदाहरण के लिए, संख्या 53610 = 00000010000110002 को मेमोरी रजिस्टर में निम्नलिखित रूप में दर्शाया जाएगा:
तालिका 5
और एक ऋणात्मक संख्या -53610 = 100000100000110002 के रूप में:
तालिका 6
हस्ताक्षरित संख्या मान प्रारूप में अधिकतम सकारात्मक संख्या या न्यूनतम नकारात्मक संख्या (प्रति चिह्न एक अंक के प्रतिनिधित्व को ध्यान में रखते हुए) 2n-1 - 1 = 216-1 - 1 = 215 - 1 = 3276710 = 1111111111111112 और संख्याओं की सीमा है - 3276710 से 32767 तक होगा।
अक्सर, बाइनरी सिस्टम में हस्ताक्षरित पूर्णांकों का प्रतिनिधित्व करने के लिए, दो के पूरक कोड प्रारूप का उपयोग किया जाता है, जो आपको कंप्यूटर में घटाव के अंकगणितीय ऑपरेशन को एक अतिरिक्त ऑपरेशन के साथ बदलने की अनुमति देता है, जो माइक्रोप्रोसेसर की संरचना को काफी सरल बनाता है और इसके प्रदर्शन को बढ़ाता है। .
इस प्रारूप में ऋणात्मक पूर्णांकों को दर्शाने के लिए, दो के पूरक कोड का उपयोग किया जाता है, जो एक ऋणात्मक संख्या का शून्य तक मापांक है। एक ऋणात्मक पूर्णांक को दो के पूरक में परिवर्तित करना निम्नलिखित परिचालनों का उपयोग करके किया जाता है:
1) संख्या के मॉड्यूल को सीधे कोड में n (n = 16) बाइनरी अंकों में लिखें;
2) संख्या का उल्टा कोड प्राप्त करें (संख्या के सभी अंकों को उलटा करें, यानी सभी को शून्य से और शून्य को एक से बदलें);
3) परिणामी रिवर्स कोड में सबसे कम महत्वपूर्ण अंक में से एक जोड़ें।
उदाहरण के लिए, इस प्रारूप में संख्या -53610 के लिए, मापांक 00000010000110002 होगा, पारस्परिक कोड 1111110111100111 होगा, और अतिरिक्त कोड 1111110111101000 होगा।
यह याद रखना चाहिए कि किसी धनात्मक संख्या का पूरक संख्या ही होती है।
उपयोग किए जाने पर 16-बिट कंप्यूटर प्रतिनिधित्व के अलावा अन्य हस्ताक्षरित पूर्णांकों को संग्रहीत करने के लिए दो मेमोरी रजिस्टर(इस संख्या प्रारूप को लघु हस्ताक्षरित पूर्णांक प्रारूप भी कहा जाता है), मध्यम और दीर्घ हस्ताक्षरित पूर्णांक प्रारूप का उपयोग किया जाता है। मध्य संख्या प्रारूप में संख्याओं का प्रतिनिधित्व करने के लिए, चार रजिस्टरों का उपयोग किया जाता है (4 x 8 = 32 बिट्स), और लंबी संख्या प्रारूप में संख्याओं का प्रतिनिधित्व करने के लिए, आठ रजिस्टरों का उपयोग किया जाता है (8 x 8 = 64 बिट्स)। मध्यम और दीर्घ संख्या प्रारूपों के लिए मानों की श्रेणियाँ क्रमशः होंगी: -(231 - 1) ... + 231 - 1 और -(263-1) ... + 263 - 1।
निश्चित बिंदु प्रारूप में संख्याओं के कंप्यूटर प्रतिनिधित्व के अपने फायदे और नुकसान हैं। को फ़ायदेअंकगणित संचालन को लागू करने के लिए संख्याओं और एल्गोरिदम का प्रतिनिधित्व करने की सादगी शामिल है; नुकसान संख्याओं के प्रतिनिधित्व की सीमित सीमा है, जो व्यावहारिक प्रकृति (गणितीय, आर्थिक, भौतिक, आदि) की कई समस्याओं को हल करने के लिए अपर्याप्त हो सकती है।
वास्तविक संख्याओं (परिमित और अनंत दशमलव) को फ्लोटिंग पॉइंट प्रारूप में कंप्यूटर में संसाधित और संग्रहीत किया जाता है। इस संख्या प्रतिनिधित्व प्रारूप के साथ, प्रविष्टि में दशमलव बिंदु की स्थिति बदल सकती है। फ़्लोटिंग पॉइंट प्रारूप में किसी भी वास्तविक संख्या K को इस प्रकार दर्शाया जा सकता है:
जहां A संख्या का मंटिसा है; एच - संख्या प्रणाली का आधार; पी - संख्या क्रम.
दशमलव संख्या प्रणाली के लिए अभिव्यक्ति (2.7) इस प्रकार होगी:
बाइनरी के लिए -
अष्टक के लिए -
हेक्साडेसिमल के लिए -
संख्या निरूपण के इस रूप को भी कहा जाता है सामान्य . क्रम में परिवर्तन के साथ, संख्या में अल्पविराम बदल जाता है, अर्थात यह बाईं या दाईं ओर तैरता हुआ प्रतीत होता है। इसलिए, संख्याओं को निरूपित करने का सामान्य रूप कहा जाता है फ़्लोटिंग पॉइंट फॉर्म. उदाहरण के लिए, फ्लोटिंग पॉइंट प्रारूप में दशमलव संख्या 15.5 को इस प्रकार दर्शाया जा सकता है: 0.155 102; 1.55 101; 15.5 100; 155.0 10-1; 1550.0 · 10-2, आदि। दशमलव फ़्लोटिंग पॉइंट नोटेशन 15.5 का यह रूप कंप्यूटर प्रोग्राम लिखते समय और उन्हें कंप्यूटर में दर्ज करते समय उपयोग नहीं किया जाता है (कंप्यूटर इनपुट डिवाइस केवल रैखिक डेटा रिकॉर्डिंग स्वीकार करते हैं)। इसके आधार पर दशमलव संख्याओं को निरूपित करने तथा उन्हें कम्प्यूटर में दर्ज करने हेतु अभिव्यक्ति (2.7) को रूप में परिवर्तित किया जाता है
जहाँ P संख्या का क्रम है,
यानी संख्या प्रणाली के आधार के स्थान पर 10 अक्षर E लिखते हैं, अल्पविराम के स्थान पर बिंदु लिखते हैं और गुणन चिह्न नहीं लगाया जाता है। इस प्रकार, फ्लोटिंग पॉइंट और रैखिक प्रारूप (कंप्यूटर प्रतिनिधित्व) में संख्या 15.5 इस प्रकार लिखी जाएगी: 0.155E2; 1.55ई1; 15.5ई0; 155.0ई-1; 1550.0ई-2, आदि।
संख्या प्रणाली के बावजूद, फ्लोटिंग पॉइंट फॉर्म में किसी भी संख्या को अनंत संख्याओं द्वारा दर्शाया जा सकता है। रिकॉर्डिंग के इस रूप को कहा जाता है असामान्यीकृत . फ़्लोटिंग पॉइंट संख्याओं के स्पष्ट प्रतिनिधित्व के लिए, संख्या लिखने का एक सामान्यीकृत रूप उपयोग किया जाता है, जिसमें संख्या के मंटिसा को शर्त को पूरा करना होगा
कहाँ |ए| - संख्या के मंटिसा का पूर्ण मूल्य।
शर्त (2.9) का अर्थ है कि मंटिसा एक उचित अंश होना चाहिए और दशमलव बिंदु के बाद एक गैर-शून्य अंक होना चाहिए, या, दूसरे शब्दों में, यदि दशमलव बिंदु के बाद मंटिसा में शून्य नहीं है, तो संख्या को सामान्यीकृत कहा जाता है . तो, फ्लोटिंग पॉइंट फॉर्म में सामान्यीकृत रूप (सामान्यीकृत मंटिसा) में संख्या 15.5 इस तरह दिखेगी: 0.155 102, यानी सामान्यीकृत मंटिसा ए = 0.155 और क्रम पी = 2 होगा, या संख्या 0.155E2 के कंप्यूटर प्रतिनिधित्व में होगा।
फ़्लोटिंग पॉइंट नंबरों का एक निश्चित प्रारूप होता है और वे कंप्यूटर मेमोरी के चार (32 बिट्स) या आठ बाइट्स (64 बिट्स) पर कब्जा कर लेते हैं। यदि कोई संख्या कंप्यूटर की मेमोरी में 32 बिट्स रखती है, तो यह एक नियमित परिशुद्धता संख्या है; यदि यह 64 बिट्स है, तो यह एक दोहरी परिशुद्धता संख्या है। फ़्लोटिंग पॉइंट नंबर लिखते समय, मंटिसा के चिह्न, घातांक के चिह्न, मंटिसा और घातांक को संग्रहीत करने के लिए बिट्स आवंटित किए जाते हैं। संख्या के क्रम में आवंटित अंकों की संख्या संख्याओं की भिन्नता की सीमा निर्धारित करती है, और मंटिसा को संग्रहीत करने के लिए आवंटित अंकों की संख्या उस सटीकता को निर्धारित करती है जिसके साथ संख्या निर्दिष्ट की जाती है।
फ़्लोटिंग पॉइंट प्रारूप में प्रस्तुत संख्याओं पर अंकगणितीय संचालन (जोड़ और घटाव) करते समय, निम्नलिखित प्रक्रिया (एल्गोरिदम) लागू की जाती है:
1) संख्याओं का क्रम जिस पर अंकगणितीय संक्रियाएँ की जाती हैं, संरेखित किया गया है (छोटी निरपेक्ष संख्या का क्रम बड़ी निरपेक्ष संख्या के क्रम तक बढ़ जाता है, जबकि मंटिसा उसी मात्रा से घट जाती है);
2) अंकगणितीय संक्रियाएं संख्याओं के मंटिसा पर की जाती हैं;
3) प्राप्त परिणाम सामान्यीकृत है।
व्यावहारिक भाग
विषय: कंप्यूटर पर संख्याओं का प्रतिनिधित्व करना। फिक्स्ड और फ़्लोटिंग पॉइंट प्रारूप। प्रत्यक्ष, उल्टा और पूरक कोड।
दोहराव: पूर्णांकों को बाइनरी संख्या प्रणाली में परिवर्तित करना:
13 10 = ए 2 वैसे ही:
13 10 =1101 2
1345 10 =10101000001 2
कंप्यूटर में पूर्णांकों का निरूपण.
कंप्यूटर द्वारा संसाधित सभी जानकारी बाइनरी रूप में संग्रहीत की जाती है। यह भंडारण कैसे किया जाता है?
कंप्यूटर में दर्ज की गई और उसके संचालन के दौरान उत्पन्न जानकारी इसकी मेमोरी में संग्रहीत होती है। कंप्यूटर मेमोरी के बारे में सोचा जा सकता है लंबा पेज, अलग-अलग पंक्तियों से मिलकर। ऐसी प्रत्येक पंक्ति को कहा जाता है मेमोरी सेल .
कक्ष - यह कंप्यूटर की मेमोरी का एक हिस्सा है जिसमें प्रसंस्करण के लिए उपलब्ध जानकारी होती है अलग टीम प्रोसेसर. न्यूनतम पता योग्य मेमोरी सेल को बाइट कहा जाता है - 8 बाइनरी अंक। किसी बाइट के क्रम संख्या को कहा जाता है पता .
सेल (8बिट = 1बाइट)मशीन शब्द.
एक मेमोरी सेल में एक निश्चित संख्या में सजातीय तत्व होते हैं। प्रत्येक तत्व दो अवस्थाओं में से एक में होने में सक्षम है और किसी संख्या के अंकों में से एक का प्रतिनिधित्व करने का कार्य करता है। इसीलिए प्रत्येक कोशिका तत्व को कहा जाता है स्राव होना . किसी सेल में अंकों की संख्या आमतौर पर दाएं से बाएं ओर की जाती है, सबसे दाएं अंक की क्रम संख्या 0 होती है। यह मेमोरी सेल का निम्न-क्रम अंक है, सबसे महत्वपूर्ण अंक में एक क्रम संख्या (n-1) होती है एक एन-बिट मेमोरी सेल।
किसी भी बिट की सामग्री 0 या 1 हो सकती है।
मेमोरी सेल की सामग्री को कहा जाता है मशीन शब्द. मेमोरी सेल को अंकों में विभाजित किया जाता है, जिनमें से प्रत्येक एक संख्या का एक अंक संग्रहीत करता है।
उदाहरण के लिए, सबसे आधुनिक व्यक्तिगत कम्प्यूटर्स 64-बिट हैं, यानी, एक मशीन शब्द और, तदनुसार, एक मेमोरी सेल, जिसमें 64 बिट्स होते हैं या बिट्स.
अंश - सूचना के मापन की न्यूनतम इकाई। प्रत्येक बिट 0 या 1 हो सकता है। मारो यह भी कहा जाता है स्राव होना कंप्यूटर मेमोरी सेल.
मानक आकारसबसे छोटी मेमोरी सेल आठ बिट्स यानी आठ बाइनरी अंकों के बराबर होती है। 8 बिट्स का एक सेट डेटा प्रतिनिधित्व की मूल इकाई है - एक बाइट।
बाइट (अंग्रेजी बाइट से - शब्दांश) - एक मशीनी शब्द का हिस्सा, जिसमें 8 बिट्स होते हैं, जो पूरे कंप्यूटर में संसाधित होते हैं। स्क्रीन पर 8 बिट्स वाली एक मेमोरी सेल होती है - यह एक बाइट है। सबसे कम महत्वपूर्ण अंक की क्रम संख्या 0 है, सबसे महत्वपूर्ण अंक की क्रम संख्या 7 है।
8 बिट = 1 बाइट
कंप्यूटर मेमोरी में संख्याओं को दर्शाने के लिए दो प्रारूपों का उपयोग किया जाता है: निश्चित बिंदु प्रारूप और फ़्लोटिंग पॉइंट प्रारूप . निश्चित-बिंदु प्रारूप में प्रतिनिधित्व किया गया केवल पूर्णांक , फ़्लोटिंग पॉइंट प्रारूप में - वास्तविक संख्याएँ (आंशिक)।
कंप्यूटर की सहायता से हल की गई अधिकांश समस्याओं में, कई क्रियाएं पूर्णांकों पर संचालन तक सीमित हो जाती हैं। इसमें आर्थिक प्रकृति की समस्याएं शामिल हैं, जिसमें डेटा शेयरों, कर्मचारियों, भागों की संख्या है। वाहनवगैरह। पूर्णांकों का उपयोग दिनांक और समय को इंगित करने और विभिन्न वस्तुओं को क्रमांकित करने के लिए किया जाता है: सरणी तत्व, डेटाबेस प्रविष्टियाँ, मशीन पते, आदि।
पूर्णांकों को कंप्यूटर में हस्ताक्षरित या अहस्ताक्षरित (सकारात्मक या नकारात्मक) के रूप में दर्शाया जा सकता है।
अहस्ताक्षरित पूर्णांक आम तौर परस्मृति में एक या दो बाइट्स रखेंऔर एकल-बाइट प्रारूप में 00000000 से मान स्वीकार करें 2 11111111 तक 2 , और डबल-बाइट प्रारूप में - 00000000 00000000 से 2 11111111 11111111 पर 2 .
हस्ताक्षरित पूर्णांक आमतौर पर कंप्यूटर मेमोरी में एक, दो या चार बाइट्स होती हैं, जिसमें सबसे बाईं (सबसे महत्वपूर्ण) बिट में संख्या के चिह्न के बारे में जानकारी होती है। धन चिह्न को शून्य के रूप में और ऋण चिह्न को एक के रूप में कोडित किया गया है।
1101 2 10101000001 2चिह्न को निर्दिष्ट अंक
(इस मामले में +)
संपूर्ण बाइट में गायब सबसे महत्वपूर्ण बिट्स शून्य से भरे हुए हैं।
में कंप्यूटर प्रौद्योगिकीहस्ताक्षरित पूर्णांकों की रिकॉर्डिंग (कोडिंग) के तीन रूपों का उपयोग किया जाता है:सीधा कोड , पीछे कोड , अतिरिक्त कोड .
सीधा कोड बाइनरी संख्या प्रणाली में एक संख्या का प्रतिनिधित्व है, जिसमें पहला अंक संख्या के चिह्न को सौंपा गया है। यदि संख्या धनात्मक है, तो पहला अंक 0 है; यदि संख्या ऋणात्मक है, तो पहला अंक एक है।
वास्तव में, प्रत्यक्ष कोड का उपयोग लगभग विशेष रूप से सकारात्मक संख्याओं के लिए किया जाता है।डायरेक्ट नंबर कोड लिखने के लिए आपको चाहिए:
किसी संख्या को बाइनरी में निरूपित करें
8-बिट या 16-बिट सेल के अंतिम सबसे महत्वपूर्ण अंक में शून्य जोड़ें
संख्या के चिह्न के आधार पर सबसे महत्वपूर्ण अंक को शून्य या एक से भरें।
उदाहरण:एकल-बाइट प्रारूप के प्रत्यक्ष कोड में संख्या 3 10 को इस प्रकार प्रस्तुत किया जाएगा:
एचइस्लो-3 10 एकल-बाइट प्रारूप के प्रत्यक्ष कोड में यह इस प्रकार दिखता है:
वापसी कोड बाइनरी संख्या प्रणाली में एक सकारात्मक संख्या के लिए प्रत्यक्ष कोड के साथ मेल खाता है। एक ऋणात्मक संख्या के लिए, संख्या के सभी अंकों को उनके विपरीत अंकों से बदल दिया जाता है (1 बटा 0, 0 बटा 1)औंधाना, और एक चिन्ह अंक में दर्ज किया गया है।
ऋणात्मक संख्याओं के लिए, तथाकथित पूरक कोड का उपयोग किया जाता है। यह कंप्यूटर प्रौद्योगिकी के साथ संख्याओं पर संचालन करने की सुविधा के कारण है।
अतिरिक्त कोड इसका उपयोग मुख्य रूप से कंप्यूटर में नकारात्मक संख्याओं को दर्शाने के लिए किया जाता है। यह कोड कंप्यूटर के लिए अंकगणितीय परिचालन को अधिक सुविधाजनक बनाता है।
पूरक कोड के साथ-साथ प्रत्यक्ष कोड में, संख्या के चिह्न को दर्शाने के लिए पहला अंक आवंटित किया जाता है। सकारात्मक संख्याओं के लिए प्रत्यक्ष और पूरक कोड समान हैं। चूंकि प्रत्यक्ष कोड का उपयोग लगभग विशेष रूप से सकारात्मक संख्याओं को दर्शाने के लिए किया जाता है, और पूरक कोड का उपयोग नकारात्मक संख्याओं के लिए किया जाता है, तो लगभग हमेशा, यदि पहले अंक में 1 है, तो हम एक पूरक कोड के साथ काम कर रहे हैं। (शून्य एक धनात्मक संख्या को दर्शाता है, और एक एक ऋणात्मक संख्या को दर्शाता है)।
ऋणात्मक संख्या के लिए पूरक कोड प्राप्त करने के लिए एल्गोरिदम:
1. संख्या का प्रत्यक्ष कोड ढूंढें (संख्या को बाइनरी संख्या प्रणाली में बदलें, एक अहस्ताक्षरित संख्या)
2. रिटर्न कोड प्राप्त करें. प्रत्येक शून्य को एक में बदलें, और प्रत्येक को शून्य में बदलें (संख्या को उलटा करें)
3. उल्टे कोड में 1 जोड़ें
उदाहरण: आइए 16-बिट प्रारूप में दशमलव संख्या - 47 का अतिरिक्त कोड खोजें।
हम ढूंढ लेंगे द्विआधारी संकेतनसंख्या 47 (प्रत्यक्ष कोड)।
महत्वपूर्ण!
सकारात्मक संख्याओं के लिए, प्रत्यक्ष, व्युत्क्रम और पूरक कोड एक ही चीज़ हैं, अर्थात। प्रत्यक्ष कोड. धनात्मक संख्याओं को कंप्यूटर पर प्रदर्शित करने के लिए उन्हें उलटने की कोई आवश्यकता नहीं है!
इसका उपयोग क्यों किया जाता है?ऋणात्मक संख्या दर्शाने के लिए अतिरिक्त कोड?
इससे गणितीय कार्य करना आसान हो जाता है। उदाहरण के लिए, हमारे पास प्रत्यक्ष कोड में दर्शाए गए दो नंबर हैं। एक संख्या धनात्मक है, दूसरी ऋणात्मक है, और इन संख्याओं को जोड़ने की आवश्यकता है। हालाँकि, आप उन्हें यूं ही मोड़ नहीं सकते। सबसे पहले कंप्यूटर को यह पता लगाना होगा कि संख्याएँ क्या हैं। यह पता चलने पर कि एक संख्या ऋणात्मक है, उसे जोड़ संक्रिया को घटाव संक्रिया से बदल देना चाहिए। फिर, परिणाम के संकेत का पता लगाने और यह तय करने के लिए कि किसमें से क्या घटाना है, मशीन को यह निर्धारित करना होगा कि निरपेक्ष मान में कौन सी संख्या अधिक है। नतीजा यह निकलता है जटिल एल्गोरिदम. यदि नकारात्मक संख्याओं को दो के पूरक में बदल दिया जाए तो संख्याओं को जोड़ना बहुत आसान है।
व्यावहारिक कार्य:
अभ्यास 1। निम्नलिखित दशमलव संख्याओं के आगे, पीछे और पूरक कोड का उपयोग करके लिखें8 बिटकक्ष:
64 10, - 120 10
कार्य 2. 16-बिट ग्रिड में निम्नलिखित दशमलव संख्याओं के आगे, पीछे और पूरक कोड लिखें
57 10 - 117 10 - 200 10