अग्नि सुरक्षा का विश्वकोश

बाइनरी कोड डिक्रिप्शन ऑनलाइन। बाइनरी कोड - इसे कहाँ और कैसे लागू किया जाता है

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

बाइनरी नोटेशन कैसे बनता है?

आइए देखें कि ऐसी कुंजी कैसे बनती है। बाइनरी कोड के एक बिट में केवल दो अवस्थाएँ हो सकती हैं: शून्य और एक (0 और 1)। दो अंकों का उपयोग करते समय, चार मान लिखना संभव हो जाता है: 00, 01, 10, 11। तीन अंकों के रिकॉर्ड में आठ अवस्थाएँ होती हैं: 000, 001 ... 110, 111। परिणामस्वरूप, हम पाते हैं कि लंबाई बाइनरी कोड अंकों की संख्या पर निर्भर करता है। इस व्यंजक को निम्न सूत्र का उपयोग करके लिखा जा सकता है: N =2m, जहाँ: m अंकों की संख्या है, और N संयोजनों की संख्या है।

बाइनरी कोड के प्रकार

माइक्रोप्रोसेसरों में, ऐसी कुंजियों का उपयोग विभिन्न प्रकार की संसाधित सूचनाओं को रिकॉर्ड करने के लिए किया जाता है। बाइनरी कोड की बिट डेप्थ इसकी बिल्ट-इन मेमोरी से काफी अधिक हो सकती है। ऐसे मामलों में, लंबी संख्याएँ कई मेमोरी सेल पर कब्जा कर लेती हैं और कई कमांड का उपयोग करके संसाधित की जाती हैं। इस मामले में, एक मल्टीबाइट बाइनरी कोड के लिए आवंटित सभी मेमोरी सेक्टरों को एक ही संख्या के रूप में माना जाता है।

यह या वह जानकारी प्रदान करने की आवश्यकता के आधार पर, निम्न प्रकार की कुंजियाँ प्रतिष्ठित हैं:

  • अहस्ताक्षरित;
  • प्रत्यक्ष पूर्णांक वर्ण कोड;
  • हस्ताक्षरित व्युत्क्रम;
  • अतिरिक्त हस्ताक्षर करें;
  • ग्रे कोड;
  • ग्रे-एक्सप्रेस कोड.;
  • आंशिक कोड।

आइए उनमें से प्रत्येक पर अधिक विस्तार से विचार करें।

अहस्ताक्षरित बाइनरी

आइए देखें कि इस प्रकार का रिकॉर्ड क्या है। अहस्ताक्षरित पूर्णांक कोड में, प्रत्येक अंक (बाइनरी) दो की शक्ति का प्रतिनिधित्व करता है। इस स्थिति में, इस रूप में लिखी जा सकने वाली सबसे छोटी संख्या शून्य है, और अधिकतम को निम्न सूत्र द्वारा दर्शाया जा सकता है: M=2 p -1। ये दो नंबर पूरी तरह से कुंजी की सीमा को परिभाषित करते हैं जो इस तरह के बाइनरी कोड को व्यक्त कर सकते हैं। आइए प्रविष्टि के उल्लिखित रूप की संभावनाओं को देखें। इस प्रकार की अहस्ताक्षरित कुंजी का उपयोग करते समय, जिसमें आठ बिट्स होते हैं, संभावित संख्याओं की सीमा 0 से 255 तक होगी। सोलह-बिट कोड की सीमा 0 से 65535 तक होगी। आठ-बिट प्रोसेसर में, मेमोरी के दो सेक्टर होते हैं ऐसी संख्याओं को संग्रहीत करने और लिखने के लिए उपयोग किया जाता है, जो आसन्न गंतव्यों में स्थित हैं। ऐसी चाबियों के साथ कार्य करना विशेष आदेशों द्वारा प्रदान किया जाता है।

प्रत्यक्ष पूर्णांक हस्ताक्षरित कोड

इस प्रकार की बाइनरी कुंजियों में, किसी संख्या के चिह्न को लिखने के लिए सबसे महत्वपूर्ण अंक का उपयोग किया जाता है। शून्य सकारात्मक है और एक नकारात्मक है। इस बिट की शुरूआत के परिणामस्वरूप, एन्कोडेड नंबरों की श्रेणी को स्थानांतरित कर दिया गया है नकारात्मक पक्ष. यह पता चला है कि आठ-बिट हस्ताक्षरित पूर्णांक बाइनरी कुंजी -127 से +127 तक की सीमा में संख्या लिख ​​सकती है। सोलह-बिट - -32767 से +32767 की सीमा में। आठ-बिट माइक्रोप्रोसेसरों में, ऐसे कोड को स्टोर करने के लिए दो आसन्न क्षेत्रों का उपयोग किया जाता है।

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

हस्ताक्षरित रिवर्स कुंजी

संकेतन का यह रूप केवल प्रत्यक्ष कोड से भिन्न होता है, जिसमें कुंजी के सभी बिट्स को उलट कर एक नकारात्मक संख्या प्राप्त की जाती है। इस मामले में, डिजिटल और साइन बिट समान हैं। इसके कारण, इस प्रकार के कोड के साथ काम करने वाले एल्गोरिदम बहुत सरल हो जाते हैं। हालाँकि, रिवर्स कुंजी को पहले अंक के चरित्र को पहचानने के लिए एक विशेष एल्गोरिथ्म की आवश्यकता होती है, जो संख्या के निरपेक्ष मान की गणना करता है। साथ ही परिणामी मूल्य के चिह्न को पुनर्स्थापित करना। इसके अलावा, संख्या के रिवर्स और डायरेक्ट कोड में शून्य लिखने के लिए दो कुंजियों का उपयोग किया जाता है। भले ही इस मान का धनात्मक या ऋणात्मक चिह्न न हो।

बाइनरी संख्या के दो के पूरक कोड पर हस्ताक्षर किए

इस प्रकार के रिकॉर्ड में पिछली कुंजियों के सूचीबद्ध नुकसान नहीं होते हैं। ऐसे कोड सकारात्मक और दोनों के प्रत्यक्ष योग की अनुमति देते हैं नकारात्मक संख्या. इस मामले में, साइन बिट का विश्लेषण नहीं किया जाता है। यह सब इस तथ्य से संभव हुआ है कि पूरक संख्याएं प्रतीकों का एक प्राकृतिक वलय हैं, न कि आगे और पीछे की कुंजियों जैसी कृत्रिम संरचनाएं। आगे, एक महत्वपूर्ण कारकयह है कि बाइनरी कोड में पूरक की गणना करना बेहद आसान है। ऐसा करने के लिए, रिवर्स कुंजी में एक इकाई जोड़ने के लिए पर्याप्त है। इस प्रकार के वर्ण कोड का उपयोग करते समय, जिसमें आठ अंक होते हैं, संभावित संख्याओं की सीमा -128 से +127 तक होगी। सोलह-बिट कुंजी की सीमा -32768 से +32767 तक होगी। आठ-बिट प्रोसेसर में, ऐसे नंबरों को स्टोर करने के लिए दो आसन्न क्षेत्रों का भी उपयोग किया जाता है।

देखे गए प्रभाव के कारण द्विआधारी दो का पूरक दिलचस्प है, जिसे संकेत प्रसार घटना कहा जाता है। आइए देखें कि इसका क्या मतलब है। यह प्रभावयह है कि एक-बाइट मान को दो-बाइट मान में परिवर्तित करने की प्रक्रिया में, उच्च बाइट के प्रत्येक बिट के लिए निम्न बाइट के साइन बिट्स के मानों को असाइन करना पर्याप्त है। यह पता चला है कि आप साइन को स्टोर करने के लिए उच्च बिट्स का उपयोग कर सकते हैं। कुंजी का मान बिल्कुल नहीं बदलता है।

ग्रे कोड

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

ग्रे एक्सप्रेस कोड

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

निश्चित-बिंदु बाइनरी कुंजी में भिन्नात्मक संख्या का प्रतिनिधित्व

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

बाइनरी कोड का फ़्लोटिंग पॉइंट प्रतिनिधित्व

इस फॉर्म का उपयोग रिकॉर्ड या इसके विपरीत करने के लिए किया जाता है - बहुत छोटा। एक उदाहरण इंटरस्टेलर दूरी या परमाणुओं और इलेक्ट्रॉनों का आकार है। ऐसे मूल्यों की गणना करते समय, किसी को बहुत बड़ी बिट गहराई वाले बाइनरी कोड का उपयोग करना होगा। हालाँकि, हमें ब्रह्मांडीय दूरियों को निकटतम मिलीमीटर तक ध्यान में रखने की आवश्यकता नहीं है। इसलिए, निश्चित-बिंदु संकेतन इस मामले में अक्षम है। ऐसे कोड प्रदर्शित करने के लिए, बीजगणितीय रूप का उपयोग किया जाता है। अर्थात्, संख्या को प्रतिनिधित्व करने वाली शक्ति को दस से गुणा करके मंटिसा के रूप में लिखा जाता है सही क्रमनंबर। आपको पता होना चाहिए कि मंटिसा एक से अधिक नहीं होना चाहिए, और दशमलव बिंदु के बाद शून्य नहीं लिखा जाना चाहिए।

माना जाता है कि बाइनरी कैलकुलस का आविष्कार 18वीं सदी की शुरुआत में जर्मन गणितज्ञ गॉटफ्रीड लीबनिज ने किया था। हालाँकि, जैसा कि वैज्ञानिकों ने हाल ही में खोजा है, मंगरेवा के पोलिनेशियन द्वीप से बहुत पहले, लोग इसका इस्तेमाल करते थे यह प्रजातिअंकगणित। इस तथ्य के बावजूद कि उपनिवेशीकरण ने मूल संख्या प्रणालियों को लगभग पूरी तरह से नष्ट कर दिया, वैज्ञानिकों ने गिनती के जटिल द्विआधारी और दशमलव प्रकारों को बहाल कर दिया है। इसके अलावा, संज्ञानात्मक वैज्ञानिक नुनेज़ का दावा है कि इसमें बाइनरी कोडिंग का उपयोग किया गया है प्राचीन चीन 9वीं शताब्दी ईसा पूर्व में वापस। इ। अन्य प्राचीन सभ्यताओं, जैसे कि माया, ने भी समय अंतराल और खगोलीय घटनाओं को ट्रैक करने के लिए दशमलव और बाइनरी सिस्टम के जटिल संयोजनों का उपयोग किया।

08. 06.2018

दिमित्री वासियारोव का ब्लॉग।

बाइनरी कोड - इसका उपयोग कहाँ और कैसे किया जाता है?

आज मैं आपसे मिलकर विशेष रूप से प्रसन्न हूं, मेरे प्रिय पाठकों, क्योंकि मैं एक शिक्षक की तरह महसूस करता हूं, जो पहले पाठ से ही कक्षा में अक्षरों और संख्याओं का परिचय देना शुरू कर देता है। और चूंकि हम डिजिटल तकनीकों की दुनिया में रहते हैं, मैं आपको बताऊंगा कि बाइनरी कोड क्या है, जो उनका आधार है।

आइए शब्दावली से शुरू करें और जानें कि बाइनरी का क्या मतलब है। स्पष्टीकरण के लिए, आइए अपने सामान्य कलन पर वापस जाएँ, जिसे "दशमलव" कहा जाता है। यही है, हम 10 अंकों का उपयोग करते हैं, जो विभिन्न संख्याओं के साथ आसानी से काम करना और उचित रिकॉर्ड रखना संभव बनाता है। इस तर्क के बाद, बाइनरी सिस्टम केवल दो वर्णों के उपयोग के लिए प्रदान करता है। हमारे मामले में, यह सिर्फ "0" (शून्य) और "1" एक है। और यहां मैं आपको चेतावनी देना चाहता हूं कि काल्पनिक रूप से उनकी जगह कोई और हो सकता है। कन्वेंशनों, लेकिन यह ये मान हैं, जो अनुपस्थिति (0, खाली) और एक सिग्नल (1 या "स्टिक") की उपस्थिति को दर्शाते हैं, जो हमें बाइनरी कोड की संरचना को और समझने में मदद करेंगे।

हमें बाइनरी कोड की आवश्यकता क्यों है?

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

उनकी आगे की जटिलता के कारण पहले प्रोसेसर का उदय हुआ, जिसने अपना काम भी किया, पहले से ही एक निश्चित तरीके से वैकल्पिक दालों से युक्त एक सिग्नल को संसाधित कर रहा था। अब हम सॉफ्टवेयर विवरण में नहीं जाएंगे, लेकिन हमारे लिए निम्नलिखित महत्वपूर्ण है: इलेक्ट्रॉनिक उपकरण आने वाले संकेतों के दिए गए अनुक्रम को अलग करने में सक्षम हैं। बेशक, इस तरह सशर्त संयोजन का वर्णन करना संभव है: "एक संकेत है"; "कोई संकेत नहीं"; "एक संकेत है"; "एक संकेत है।" आप संकेतन को सरल भी बना सकते हैं: "वहाँ है"; "नहीं"; "खा"; "खा"।

लेकिन एक इकाई "1" के साथ एक संकेत की उपस्थिति और शून्य "0" के साथ इसकी अनुपस्थिति को इंगित करना बहुत आसान है। फिर इन सबके बजाय हम एक सरल और संक्षिप्त बाइनरी कोड का उपयोग कर सकते हैं: 1011।

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

परंपरागत रूप से, एक वर्ण को कई वर्णों के अनुक्रम द्वारा एन्कोड किया जा सकता है। दो संकेत (या उनकी अनुपस्थिति) केवल चार विकल्पों का वर्णन कर सकते हैं: 00; 01;10; 11. इस एन्कोडिंग विधि को टू-बिट कहा जाता है। लेकिन यह भी हो सकता है:

  • चार-बिट (जैसा कि 1011 से ऊपर के पैराग्राफ में उदाहरण में है) आपको 2 ^ 4 = 16 वर्ण संयोजन लिखने की अनुमति देता है;
  • आठ बिट्स (उदाहरण के लिए: 0101 0011; 0111 0001)। एक समय में यह प्रोग्रामिंग के लिए सबसे बड़ी दिलचस्पी थी क्योंकि इसमें 2^8 = 256 मान शामिल थे। इससे सभी दशमलव अंकों, लैटिन वर्णमाला और विशेष वर्णों का वर्णन करना संभव हो गया;
  • सोलह-बिट (1100 1001 0110 1010) या उच्चतर। लेकिन इतनी लंबी लंबाई वाले रिकॉर्ड पहले से ही आधुनिक, अधिक जटिल कार्यों के लिए हैं। आधुनिक प्रोसेसर 32 और 64 बिट आर्किटेक्चर का उपयोग करते हैं;

ईमानदार होने के लिए, एक भी आधिकारिक संस्करण नहीं है, ऐसा हुआ है कि यह आठ वर्णों का संयोजन था जो संग्रहीत जानकारी का मानक माप बन गया, जिसे "बाइट्स" कहा जाता है। यह 8-बिट बाइनरी कोड में लिखे गए एक अक्षर पर भी लागू हो सकता है। तो, मेरे प्यारे दोस्तों, कृपया याद रखें (अगर किसी को नहीं पता था):

8 बिट = 1 बाइट।

तो मान लिया। यद्यपि 2-बिट या 32-बिट मान के रूप में लिखे गए वर्ण को नाममात्र रूप से बाइट भी कहा जा सकता है। वैसे, बाइनरी कोड के लिए धन्यवाद, हम बाइट्स में मापी गई फ़ाइलों की मात्रा और सूचना हस्तांतरण की गति और इंटरनेट (बिट्स प्रति सेकंड) का अनुमान लगा सकते हैं।

कार्रवाई में बाइनरी एन्कोडिंग

कंप्यूटरों के लिए सूचना की रिकॉर्डिंग को मानकीकृत करने के लिए, कई एन्कोडिंग सिस्टम विकसित किए गए हैं, जिनमें से एक ASCII है, जो 8-बिट रिकॉर्डिंग पर आधारित है, व्यापक हो गया है। इसमें मान एक विशेष तरीके से वितरित किए गए हैं:

  • पहले 31 वर्ण नियंत्रण वर्ण हैं (00000000 से 00011111 तक)। सर्विस कमांड, प्रिंटर या स्क्रीन पर आउटपुट, साउंड सिग्नल, टेक्स्ट फॉर्मेटिंग के लिए परोसें;
  • निम्नलिखित 32 से 127 तक (00100000 - 01111111) लैटिन वर्णमाला और सहायक प्रतीक और विराम चिह्न;
  • बाकी, 255वें (10000000 - 11111111) तक - वैकल्पिक, विशेष कार्यों के लिए तालिका का हिस्सा और राष्ट्रीय अक्षर प्रदर्शित करना;

इसमें मूल्यों की व्याख्या तालिका में दिखाई गई है।

यदि आपको लगता है कि "0" और "1" एक अराजक क्रम में स्थित हैं, तो आप गहराई से गलत हैं। उदाहरण के तौर पर किसी भी संख्या का उपयोग करते हुए, मैं आपको एक पैटर्न दिखाऊंगा और आपको सिखाऊंगा कि बाइनरी कोड में लिखी संख्याओं को कैसे पढ़ा जाता है। लेकिन इसके लिए हमें कुछ शर्तें मंजूर होंगी:

  • 8 वर्णों की एक बाइट दाएँ से बाएँ पढ़ी जाएगी;
  • यदि साधारण संख्या में इकाई, दहाई, सैकड़ा के अंकों का प्रयोग किया जाता है, तो यहाँ (विपरीत क्रम में पढ़ने पर) प्रत्येक बिट के लिए "दो" की विभिन्न शक्तियाँ प्रस्तुत हैं: 256-124-64-32-16-8-4- 2-1;
  • अब हम एक संख्या के बाइनरी कोड को देखते हैं, उदाहरण के लिए 0011011। तदनुसार: 0+0+0+32+16+0+2+1 = 51. सही है यह विधिआप कोड तालिका को देखकर सत्यापित कर सकते हैं।

अब, मेरे जिज्ञासु मित्रों, आप न केवल जानते हैं कि एक बाइनरी कोड क्या है, बल्कि यह भी जानते हैं कि इसके द्वारा एन्क्रिप्ट की गई जानकारी को कैसे परिवर्तित किया जाए।

आधुनिक तकनीक के लिए समझने योग्य भाषा

बेशक, प्रोसेसर उपकरणों द्वारा बाइनरी कोड पढ़ने के लिए एल्गोरिदम अधिक जटिल है। लेकिन इसकी मदद से आप जो चाहें लिख सकते हैं:

  • स्वरूपण विकल्पों के साथ पाठ्य सूचना;
  • संख्याएँ और उनके साथ कोई संक्रिया;
  • ग्राफिक और वीडियो छवियां;
  • ध्वनियाँ, जिनमें वे शामिल हैं जो हमारी सुनवाई से परे हैं;

इसके अलावा, "प्रस्तुति" की सादगी के कारण यह संभव है विभिन्न तरीकेबाइनरी सूचना रिकॉर्डिंग: एचडीडी डिस्क;

किसी भी दूरी पर सूचना प्रसारित करने के लिए बाइनरी कोडिंग के लाभों को लागू करना लगभग असीमित संभावनाएं हैं। यह संचार का तरीका है जिसके साथ प्रयोग किया जाता है अंतरिक्ष यानऔर कृत्रिम उपग्रह।

तो, आज, बाइनरी सिस्टम वह भाषा है जिसे हमारे द्वारा उपयोग किए जाने वाले अधिकांश इलेक्ट्रॉनिक उपकरण समझ सकते हैं। और जो सबसे दिलचस्प है, उसके लिए अभी तक कोई अन्य विकल्प नहीं देखा गया है।

मुझे लगता है कि मैंने जो जानकारी प्रदान की है वह आपके लिए आरंभ करने के लिए पर्याप्त होगी। और फिर, अगर ऐसी जरूरत पड़ी, तो हर कोई इसमें तल्लीन हो सकेगा स्वच्छंद अध्ययनइस विषय। मैं अलविदा कहूंगा और एक छोटे से ब्रेक के बाद मैं आपके लिए तैयारी करूंगा नया लेखमेरा ब्लॉग, कुछ दिलचस्प विषय पर।

अगर आप मुझे खुद बताएं तो बेहतर है;)

जल्द ही फिर मिलेंगे।

बाइनरी कोड- यह 2 वर्णों 1 या 0 के संयोजन में सूचना का प्रतिनिधित्व है, जैसा कि वे प्रोग्रामिंग में कहते हैं, हाँ या नहीं, सत्य या असत्य, सत्य या असत्य। एक सामान्य व्यक्ति के लिए यह समझना कठिन है कि सूचना को शून्य और इकाई के रूप में कैसे प्रदर्शित किया जा सकता है। मैं इस स्थिति को थोड़ा स्पष्ट करने का प्रयास करूंगा।

वास्तव में, बाइनरी कोड आसान है! उदाहरण के लिए, वर्णमाला के किसी भी अक्षर को शून्य और एक के समूह के रूप में दर्शाया जा सकता है। उदाहरण के लिए, एक पत्र एच लैटिन वर्णमालाबाइनरी सिस्टम में यह फॉर्म होगा - 01001000, अक्षर - 01000101, बीच एलनिम्नलिखित बाइनरी प्रतिनिधित्व है - 01001100, पी – 01010000.

अब यह अनुमान लगाना मुश्किल नहीं है कि अंग्रेजी शब्द HELP को मशीन भाषा में लिखने के लिए आपको निम्नलिखित बाइनरी कोड का उपयोग करने की आवश्यकता है:

01001000 01000101 01001100 01010000

यह वह कोड है जिसका उपयोग हमारा घरेलू कंप्यूटर अपने काम के लिए करता है। एक साधारण व्यक्ति कोऐसे कोड को पढ़ना बहुत मुश्किल है, लेकिन कंप्यूटर के लिए यह सबसे ज्यादा समझने योग्य है।

बाइनरी कोड (मशीन कोड)आजकल इसका उपयोग प्रोग्रामिंग में किया जाता है, क्योंकि कंप्यूटर बाइनरी कोड के लिए ठीक काम करता है। लेकिन ऐसा मत सोचो कि प्रोग्रामिंग प्रक्रिया एक और शून्य के सेट में कम हो गई है। विशेष रूप से, किसी व्यक्ति और कंप्यूटर के बीच समझ को आसान बनाने के लिए, प्रोग्रामिंग भाषाओं (C ++, BASIC, आदि) का आविष्कार किया गया था। प्रोग्रामर उस भाषा में एक प्रोग्राम लिखता है जिसे वह समझता है, और फिर, एक विशेष कंपाइलर प्रोग्राम की मदद से, मशीन कोड में अपनी रचना का अनुवाद करता है, जो कंप्यूटर को शुरू करता है।

हम दशमलव संख्या प्रणाली की प्राकृतिक संख्या को बाइनरी में अनुवादित करते हैं

हम वांछित संख्या लेते हैं, मेरे लिए यह 5 होगी, संख्या को 2 से विभाजित करें:
5: 2 = 2,5 एक शेष है, इसलिए बाइनरी कोड की पहली संख्या होगी 1 (अगर नहीं - 0 ). शेष को फेंक दें और फिर से संख्या को से विभाजित करें 2 :
2: 2 = 1 उत्तर शेष के बिना है, जिसका अर्थ है कि बाइनरी कोड की दूसरी संख्या - 0 होगी। परिणाम को फिर से 2 से विभाजित करें:
1: 2 = 0.5 संख्या शेष के साथ निकली, फिर हम लिखते हैं 1 .
खैर, चूंकि परिणाम है 0 अब विभाजित नहीं किया जा सकता है, बाइनरी कोड तैयार है और परिणामस्वरूप हमें बाइनरी कोड की संख्या मिली है 101 . मुझे लगता है कि हमने दशमलव से बाइनरी में अनुवाद करना सीख लिया है, अब हम इसके विपरीत करना सीखेंगे।

किसी संख्या को बाइनरी से दशमलव में बदलना

यहां भी, यह काफी सरल है, आइए आपके साथ हमारे बाइनरी नंबर को नंबर दें, आपको संख्या के अंत से शून्य से शुरू करने की आवश्यकता है।

101 1^2 0^1 1^0 है।

इसका क्या आया? हमने डिग्रियों को नंबरों से धोखा दिया! अब सूत्र के अनुसार:

(एक्स * 2^वाई) + (एक्स * 2^वाई) + (एक्स * 2^वाई)

कहाँ पे एक्स- बाइनरी कोड की क्रमिक संख्या
वाई- इस संख्या की डिग्री।
आपकी संख्या के आकार के आधार पर सूत्र का विस्तार होगा।
हम पाते हैं:

(1 * 2^2) + (0 * 2^1) + (1 * 2^0) = 4 + 0 + 1 = 5.

बाइनरी नंबर सिस्टम का इतिहास

पहली बार, बाइनरी सिस्टम लीबिट्ज द्वारा प्रस्तावित किया गया था, उनका मानना ​​था कि यह प्रणालीजटिल गणितीय गणनाओं में मदद मिलेगी, और सामान्य रूप से विज्ञान को लाभ होगा। लेकिन कुछ रिपोर्टों के अनुसार, लीबिट्ज ने चीन में एक द्विआधारी संख्या प्रणाली का प्रस्ताव करने से पहले, दीवार पर एक शिलालेख दिखाई दिया जिसे एक द्विआधारी कोड का उपयोग करके समझा जा सकता था। इस शिलालेख पर लंबी और छोटी छड़ें खींची गई थीं, और अगर हम मान लें कि लंबा 1 है और छोटा 0 है, तो यह बहुत संभव है कि चीन में एक बाइनरी कोड का विचार इसके आविष्कार से कई साल पहले चला था। हालांकि दीवार पर पाए गए कोड को डिक्रिप्ट करने से एक साधारण बात सामने आई प्राकृतिक संख्यालेकिन फिर भी तथ्य बना रहता है।

बाइनरी कोड टेक्स्ट, कंप्यूटर प्रोसेसर निर्देश, या किसी भी दो-कैरेक्टर सिस्टम का उपयोग करने वाला अन्य डेटा है। बहुधा, यह 0s और 1s की एक प्रणाली है। यह प्रत्येक वर्ण और निर्देश को बाइनरी अंकों (बिट्स) का एक पैटर्न प्रदान करता है। उदाहरण के लिए, आठ बिट्स की एक बाइनरी स्ट्रिंग 256 संभावित मानों में से किसी का भी प्रतिनिधित्व कर सकती है और इसलिए एक सेट उत्पन्न कर सकती है विभिन्न तत्व. प्रोग्रामरों के विश्व पेशेवर समुदाय के बाइनरी कोड की समीक्षाओं से संकेत मिलता है कि यह पेशे का आधार है और मुख्य कानूनकामकाज कंप्यूटिंग सिस्टमऔर इलेक्ट्रॉनिक उपकरण।

बाइनरी कोड डिक्रिप्शन

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

बाइनरी डिक्रिप्शन: बाइनरी नंबर के रूप में व्याख्या की गई बिट स्ट्रिंग को दशमलव संख्या में बदला जा सकता है। उदाहरण के लिए, लोअरकेस अक्षर a, यदि बिट स्ट्रिंग 01100001 (मानक ASCII कोड में) द्वारा दर्शाया जाता है, तो दशमलव संख्या 97 के रूप में भी प्रदर्शित किया जा सकता है। बाइनरी को टेक्स्ट में बदलना एक ही प्रक्रिया है, केवल रिवर्स में।

यह काम किस प्रकार करता है

बाइनरी कोड किससे बना होता है? डिजिटल कंप्यूटर में उपयोग किया जाने वाला कोड केवल दो संभावित अवस्थाओं पर आधारित होता है: पर। और बंद, आमतौर पर शून्य और एक द्वारा निरूपित किया जाता है। जबकि दशमलव प्रणाली में, जो 10 अंकों का उपयोग करता है, प्रत्येक स्थिति 10 (100, 1000, आदि) का एक गुणक है, फिर बाइनरी प्रणाली में, प्रत्येक डिजिटल स्थिति 2 (4, 8, 16, आदि) की एक बहु है। ). एक बाइनरी कोड सिग्नल विद्युत आवेगों की एक श्रृंखला है जो संख्याओं, प्रतीकों और किए जाने वाले कार्यों का प्रतिनिधित्व करता है।

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

संचार और सूचना सिद्धांत में बिट डेटा की एक इकाई है जो आमतौर पर डिजिटल कंप्यूटरों में उपयोग किए जाने वाले बाइनरी नंबर सिस्टम में दो संभावित विकल्पों के बीच एक विकल्प के परिणाम के बराबर होती है।

बाइनरी कोड समीक्षाएँ

कोड और डेटा की प्रकृति आईटी की मूलभूत दुनिया का एक बुनियादी हिस्सा है। दुनिया के आईटी विशेषज्ञ "पर्दे के पीछे" इस उपकरण के साथ काम करते हैं - प्रोग्रामर जिनकी विशेषज्ञता एक सामान्य उपयोगकर्ता के ध्यान से छिपी हुई है। डेवलपर्स से बाइनरी कोड पर प्रतिक्रिया इंगित करती है कि इस क्षेत्र में गणितीय नींव के गहन अध्ययन और गणित विश्लेषण और प्रोग्रामिंग के क्षेत्र में बहुत अभ्यास की आवश्यकता है।

बाइनरी कोड है सबसे सरल तरीकाकंप्यूटर कोड या प्रोग्रामिंग डेटा। यह पूरी तरह से संख्याओं के बाइनरी सिस्टम द्वारा दर्शाया गया है। बाइनरी कोड की समीक्षाओं के अनुसार, यह अक्सर मशीन कोड से जुड़ा होता है, क्योंकि बाइनरी सेट को फॉर्म में जोड़ा जा सकता है सोर्स कोड, जिसकी व्याख्या कंप्यूटर या अन्य हार्डवेयर द्वारा की जाती है। यह आंशिक रूप से सच है। निर्देश बनाने के लिए बाइनरी अंकों के सेट का उपयोग करता है।

कोड के सबसे बुनियादी रूप के साथ, एक बाइनरी डेटा की सबसे छोटी मात्रा का भी प्रतिनिधित्व करता है जो आज के डेटा संसाधनों और संपत्तियों को संसाधित करने वाले सभी जटिल जटिल हार्डवेयर और सॉफ़्टवेयर सिस्टम के माध्यम से प्रवाहित होता है। डेटा की सबसे छोटी मात्रा को बिट कहा जाता है। वर्तमान बिट स्ट्रिंग कोड या डेटा बन जाती है जिसे कंप्यूटर द्वारा व्याख्या किया जाता है।

बाइनरी संख्या

गणित और डिजिटल इलेक्ट्रॉनिक्स में, एक बाइनरी नंबर एक संख्या है जिसे बेस-2 नंबर सिस्टम या बाइनरी नंबर सिस्टम में व्यक्त किया जाता है, जो केवल दो वर्णों का उपयोग करता है: 0 (शून्य) और 1 (एक)।

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

इतिहास

बाइनरी कोड के आधार के रूप में आधुनिक बाइनरी संख्या प्रणाली का आविष्कार 1679 में गॉटफ्रीड लीबनिज द्वारा किया गया था और अपने लेख "बाइनरी अंकगणितीय व्याख्या" में प्रस्तुत किया गया था। लाइबनिज के धर्मशास्त्र के लिए द्विआधारी अंक केंद्रीय थे। उनका मानना ​​​​था कि द्विआधारी संख्या रचनात्मकता पूर्व निहिलो, या कुछ भी नहीं से सृजन के ईसाई विचार का प्रतीक है। लीबनिज एक ऐसी प्रणाली खोजने की कोशिश कर रहे थे जो तर्क के मौखिक बयानों को विशुद्ध रूप से गणितीय डेटा में बदल दे।

लाइबनिज से पहले के बाइनरी सिस्टम भी अस्तित्व में थे प्राचीन विश्व. एक उदाहरण चीनी बाइनरी सिस्टम I चिंग है, जहां भविष्यवाणी के लिए पाठ यिन और यांग के द्वंद्व पर आधारित है। एशिया और अफ्रीका में, संदेशों को एन्कोड करने के लिए बाइनरी टोन वाले स्लिट ड्रम का उपयोग किया जाता था। भारतीय विद्वान पिंगला (लगभग 5वीं शताब्दी ईसा पूर्व) ने अपने कार्य चंदशुत्रेमा में अभियोग का वर्णन करने के लिए एक द्विआधारी प्रणाली विकसित की।

फ्रेंच पोलिनेशिया में मंगरेवा द्वीप के निवासियों ने 1450 तक एक संकर बाइनरी-दशमलव प्रणाली का उपयोग किया। 11वीं शताब्दी में, वैज्ञानिक और दार्शनिक शाओ योंग ने हेक्साग्राम को व्यवस्थित करने के लिए एक विधि विकसित की, जो 0 से 63 तक के अनुक्रम से मेल खाती है, जैसा कि बाइनरी प्रारूप में दर्शाया गया है, जिसमें यिन 0 और यांग 1 है। यह क्रम लेक्सिकोग्राफिक क्रम भी है दो-तत्व सेट से चुने गए तत्वों के ब्लॉक।

नया समय

1605 में उन्होंने एक ऐसी प्रणाली पर चर्चा की जिसमें वर्णमाला के अक्षरों को बाइनरी अंकों के अनुक्रम में घटाया जा सकता था, जिसे बाद में किसी भी यादृच्छिक पाठ में सूक्ष्म फ़ॉन्ट विविधताओं के रूप में एन्कोड किया जा सकता था। यह ध्यान रखना महत्वपूर्ण है कि यह फ्रांसिस बेकन थे जिन्होंने बाइनरी कोडिंग के सामान्य सिद्धांत को इस अवलोकन के साथ पूरक किया कि इस पद्धति का उपयोग किसी भी वस्तु के साथ किया जा सकता है।

जॉर्ज बूल नाम के एक अन्य गणितज्ञ और दार्शनिक ने 1847 में "द मैथमैटिकल एनालिसिस ऑफ लॉजिक" शीर्षक से एक लेख प्रकाशित किया था, जो तर्क की बीजगणितीय प्रणाली का वर्णन करता है जिसे आज बूलियन बीजगणित के रूप में जाना जाता है। प्रणाली एक द्विआधारी दृष्टिकोण पर आधारित थी, जिसमें तीन बुनियादी संचालन शामिल थे: AND, OR और NOT। इस प्रणाली का उपयोग तब तक नहीं किया गया जब तक क्लॉड शैनन नाम के एक एमआईटी स्नातक छात्र ने यह नहीं देखा कि बूलियन बीजगणित जो उसने सीखा था वह एक विद्युत परिपथ की तरह था।

शैनन ने 1937 में एक शोध प्रबंध लिखा जिसने महत्वपूर्ण निष्कर्ष निकाले। कंप्यूटर और इलेक्ट्रिकल सर्किट जैसे व्यावहारिक अनुप्रयोगों में बाइनरी कोड के उपयोग के लिए शैनन की थीसिस प्रारंभिक बिंदु बन गई।

बाइनरी कोड के अन्य रूप

बिट स्ट्रिंग एकमात्र प्रकार का बाइनरी कोड नहीं है। सामान्य रूप से एक बाइनरी सिस्टम कोई भी सिस्टम है जो केवल दो विकल्पों की अनुमति देता है, जैसे इलेक्ट्रॉनिक सिस्टम में एक स्विच, या एक साधारण सही या गलत परीक्षण।

ब्रेल एक प्रकार का बाइनरी कोड है जिसका व्यापक रूप से दृष्टिहीन लोग स्पर्श द्वारा पढ़ने और लिखने के लिए उपयोग करते हैं, इसका नाम इसके निर्माता लुई ब्रेल के नाम पर रखा गया है। इस प्रणाली में छह बिंदुओं के ग्रिड होते हैं, तीन प्रति स्तंभ, जिसमें प्रत्येक बिंदु के दो राज्य होते हैं: उठाया या धंसा हुआ। डॉट्स के विभिन्न संयोजन सभी अक्षरों, संख्याओं और विराम चिह्नों का प्रतिनिधित्व करने में सक्षम हैं।

अमेरिकन स्टैंडर्ड कोड फॉर इंफॉर्मेशन इंटरचेंज (ASCII) कंप्यूटर, संचार उपकरण और अन्य उपकरणों में पाठ और अन्य वर्णों का प्रतिनिधित्व करने के लिए 7-बिट बाइनरी कोड का उपयोग करता है। प्रत्येक अक्षर या प्रतीक को 0 से 127 तक एक संख्या दी गई है।

बाइनरी कोडेड दशमलव या बीसीडी पूर्णांक मानों का एक बाइनरी कोडेड प्रतिनिधित्व है जो दशमलव अंकों को एन्कोड करने के लिए 4-बिट ग्राफ़ का उपयोग करता है। चार बाइनरी बिट्स 16 अलग-अलग मानों को एन्कोड कर सकते हैं।

बीसीडी-एन्कोडेड नंबरों में, प्रत्येक निबल में केवल पहले दस मान मान्य होते हैं और दशमलव अंकों को शून्य से नौ तक एन्कोड करते हैं। शेष छह मान अमान्य हैं और कंप्यूटर द्वारा बीसीडी अंकगणित के कार्यान्वयन के आधार पर या तो मशीन अपवाद या अनिर्दिष्ट व्यवहार का कारण हो सकता है।

बीसीडी अंकगणित को कभी-कभी वाणिज्यिक और वित्तीय अनुप्रयोगों में फ़्लोटिंग पॉइंट न्यूमेरिक प्रारूपों पर पसंद किया जाता है जहां जटिल संख्या में गोल व्यवहार अवांछनीय होता है।

आवेदन

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

टेक्स्ट लिखने के लिए प्रयुक्त चिन्हों के समूह को कहा जाता है वर्णानुक्रम.

वर्णमाला में वर्णों की संख्या है शक्ति.

सूचना की मात्रा निर्धारित करने का सूत्र: एन = 2बी,

जहाँ N वर्णमाला की प्रमुखता है (प्रतीकों की संख्या),

b बिट्स की संख्या है (प्रतीक का सूचना भार)।

लगभग सभी आवश्यक वर्णों को 256 वर्णों की क्षमता वाले वर्णमाला में रखा जा सकता है। यह अक्षर कहा जाता है पर्याप्त।

क्योंकि 256 = 2 8, तो 1 अक्षर का वजन 8 बिट है।

माप की 8-बिट इकाई को एक नाम दिया गया है 1 बाइट:

1 बाइट = 8 बिट।

कंप्यूटर टेक्स्ट में प्रत्येक वर्ण का बाइनरी कोड 1 बाइट मेमोरी रखता है।

पाठ्य सूचना को कंप्यूटर मेमोरी में कैसे प्रदर्शित किया जाता है?

वर्णों के बाइट-बाय-बाइट एन्कोडिंग की सुविधा स्पष्ट है, क्योंकि एक बाइट मेमोरी का सबसे छोटा पता योग्य हिस्सा है और इसलिए, टेक्स्ट प्रोसेसिंग करते समय प्रोसेसर प्रत्येक वर्ण को अलग से एक्सेस कर सकता है। दूसरी ओर, 256 अक्षर चरित्र की विस्तृत जानकारी का प्रतिनिधित्व करने के लिए काफी हैं।

अब प्रश्न उठता है कि प्रत्येक वर्ण के अनुरूप कौन सा आठ-बिट बाइनरी कोड रखा जाए।

यह स्पष्ट है कि यह एक सशर्त मामला है, आप एनकोडिंग के कई तरीकों के साथ आ सकते हैं।

कंप्यूटर वर्णमाला के सभी वर्ण 0 से 255 तक गिने जाते हैं। प्रत्येक संख्या 00000000 से 11111111 तक आठ-बिट बाइनरी कोड से मेल खाती है। यह कोड केवल बाइनरी नंबर सिस्टम में वर्ण की क्रमिक संख्या है।

एक तालिका जिसमें कंप्यूटर वर्णमाला के सभी वर्णों को क्रम संख्या दी जाती है, एक एन्कोडिंग तालिका कहलाती है।

के लिए अलग - अलग प्रकारकंप्यूटर विभिन्न एन्कोडिंग तालिकाओं का उपयोग करता है।

टेबल पीसी के लिए अंतरराष्ट्रीय मानक बन गया है। एएससीआईआई(उच्चारण asci) (अमेरिकन स्टैंडर्ड कोड फॉर इंफॉर्मेशन इंटरचेंज)।

ASCII कोड तालिका को दो भागों में विभाजित किया गया है।

तालिका का केवल पहला भाग एक अंतरराष्ट्रीय मानक है, अर्थात। अंकों के साथ अक्षर 0 (00000000), तक 127 (01111111).

ASCII एन्कोडिंग टेबल की संरचना

क्रमांक

कोड

प्रतीक

0 - 31

00000000 - 00011111

0 से 31 तक की संख्या वाले वर्णों को नियंत्रण वर्ण कहा जाता है।
इनका कार्य स्क्रीन पर टेक्स्ट प्रदर्शित करने या प्रिंट करने, फाइल करने की प्रक्रिया को नियंत्रित करना है ध्वनि संकेत, पाठ मार्कअप, आदि।

32 - 127

00100000 - 01111111

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

128 - 255

10000000 - 11111111

तालिका का वैकल्पिक भाग (रूसी)।
ASCII कोड तालिका की दूसरी छमाही, जिसे कोड पेज कहा जाता है (128 कोड 10000000 से शुरू होते हैं और 11111111 के साथ समाप्त होते हैं), हो सकते हैं विभिन्न विकल्प, प्रत्येक विकल्प की अपनी संख्या होती है।
कोड पृष्ठ मुख्य रूप से लैटिन के अलावा अन्य राष्ट्रीय लिपियों को समायोजित करने के लिए उपयोग किया जाता है। रूसी राष्ट्रीय एन्कोडिंग में, रूसी वर्णमाला के वर्ण तालिका के इस भाग में रखे गए हैं।

ASCII कोड तालिका का पहला भाग


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

रूसी वर्णमाला के अक्षरों के लिए अनुक्रमिक कोडिंग का सिद्धांत भी देखा जाता है।

ASCII कोड तालिका का दूसरा भाग


दुर्भाग्य से, वर्तमान में पांच अलग-अलग सिरिलिक एनकोडिंग (KOI8-R, Windows. MS-DOS, Macintosh और ISO) हैं। इस वजह से, रूसी पाठ को एक कंप्यूटर से दूसरे कंप्यूटर में, एक सॉफ्टवेयर सिस्टम से दूसरे में स्थानांतरित करने में अक्सर समस्याएं उत्पन्न होती हैं।

कालानुक्रमिक रूप से, कंप्यूटर पर रूसी अक्षरों को एन्कोड करने वाले पहले मानकों में से एक KOI8 ("सूचना विनिमय कोड, 8-बिट") था। इस एन्कोडिंग का उपयोग 70 के दशक में ES EVM श्रृंखला के कंप्यूटरों पर किया गया था, और 80 के दशक के मध्य से इसे पहले Russified संस्करणों में उपयोग किया जाने लगा ऑपरेटिंग सिस्टमयूनिक्स।

90 के दशक की शुरुआत से, MS DOS ऑपरेटिंग सिस्टम के प्रभुत्व के समय, एन्कोडिंग CP866 बनी हुई है ("CP" का अर्थ "कोड पेज", "कोड पेज") है।

Mac OS ऑपरेटिंग सिस्टम चलाने वाले Apple कंप्यूटर अपने स्वयं के Mac एन्कोडिंग का उपयोग करते हैं।

इसके अलावा, मानकीकरण के लिए अंतर्राष्ट्रीय संगठन (अंतर्राष्ट्रीय मानक संगठन, आईएसओ) ने रूसी भाषा के लिए एक मानक के रूप में आईएसओ 8859-5 नामक एक अन्य एन्कोडिंग को मंजूरी दी।

वर्तमान में उपयोग किया जाने वाला सबसे आम एन्कोडिंग Microsoft Windows है, जिसे CP1251 के रूप में संक्षिप्त किया गया है।

90 के दशक के अंत से, चरित्र कोडिंग मानकीकरण की समस्या को एक नया परिचय देकर हल किया गया है अंतर्राष्ट्रीय मानक, जिसे कहा जाता है यूनिकोड. यह एक 16-बिट एन्कोडिंग है, यानी। इसमें प्रति वर्ण मेमोरी के 2 बाइट हैं। बेशक, इस मामले में, कब्जा की गई मेमोरी की मात्रा 2 गुना बढ़ जाती है। लेकिन ऐसी कोड तालिका 65536 वर्णों को शामिल करने की अनुमति देती है। यूनिकोड मानक के पूर्ण विनिर्देश में दुनिया के सभी मौजूदा, विलुप्त और कृत्रिम रूप से बनाए गए अक्षर, साथ ही कई गणितीय, संगीत, रासायनिक और अन्य प्रतीक शामिल हैं।

कंप्यूटर की मेमोरी में शब्द कैसे दिखेंगे, इसकी कल्पना करने के लिए आइए ASCII तालिका का उपयोग करने का प्रयास करें।

कंप्यूटर मेमोरी में शब्दों का आंतरिक प्रतिनिधित्व

कभी-कभी ऐसा होता है कि किसी अन्य कंप्यूटर से प्राप्त रूसी वर्णमाला के अक्षरों से युक्त पाठ को पढ़ा नहीं जा सकता है - मॉनिटर स्क्रीन पर किसी प्रकार का "अब्रकदबरा" दिखाई देता है। यह इस तथ्य के कारण है कि कंप्यूटर रूसी भाषा के विभिन्न वर्ण एन्कोडिंग का उपयोग करते हैं।

समान पद