ASCII और यूनिकोड टेक्स्ट में क्या अंतर है?

ASCII और यूनिकोड टेक्स्ट में क्या अंतर है?

ASCII और यूनिकोड दोनों मानक हैं जो पाठ के डिजिटल प्रतिनिधित्व को संदर्भित करते हैं, विशेष रूप से वर्ण जो पाठ बनाते हैं। हालांकि, दो मानक काफी भिन्न हैं, कई गुण उनके निर्माण के संबंधित क्रम को दर्शाते हैं।





अमेरिका बनाम ब्रह्मांड

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





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





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

कैरेक्टर सेट या कैरेक्टर एन्कोडिंग?

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



एएससीआईआई मानक प्रभावी रूप से दोनों है: यह वर्णों के सेट को परिभाषित करता है जो यह दर्शाता है और प्रत्येक वर्ण को एक संख्यात्मक मान पर मैप करने की एक विधि को परिभाषित करता है।

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





आकार

अपने दायरे के कारण, यूनिकोड ASCII की तुलना में कहीं अधिक वर्णों का प्रतिनिधित्व करता है। मानक ASCII 128 विशिष्ट को एन्कोड करने के लिए 7-बिट श्रेणी का उपयोग करता है पात्र . दूसरी ओर, यूनिकोड इतना बड़ा है कि हमें इसके बारे में बात करने के लिए अलग-अलग शब्दावली का उपयोग करने की आवश्यकता है!

यूनिकोड १,१११,९९८ एड्रेसेबल को पूरा करता है कोड अंक। एक कोड बिंदु मोटे तौर पर एक चरित्र के लिए आरक्षित स्थान के समान होता है, लेकिन जब आप विवरण में तल्लीन करना शुरू करते हैं तो स्थिति उससे कहीं अधिक जटिल होती है!





एक अधिक उपयोगी तुलना यह है कि वर्तमान में कितनी स्क्रिप्ट (या लेखन प्रणाली) समर्थित हैं। बेशक, ASCII केवल अंग्रेजी वर्णमाला को संभालता है, अनिवार्य रूप से लैटिन या रोमन लिपि। 2020 में निर्मित यूनिकोड का संस्करण बहुत आगे जाता है: इसमें कुल 154 लिपियों का समर्थन शामिल है।

भंडारण

ASCII की 7-बिट श्रेणी का अर्थ है कि प्रत्येक वर्ण एकल 8-बिट बाइट में संग्रहीत है; मानक ASCII में अतिरिक्त बिट का उपयोग नहीं किया जाता है। यह आकार की गणना को तुच्छ बनाता है: अक्षरों में पाठ की लंबाई, बाइट्स में फ़ाइल का आकार है।

आप बैश कमांड के निम्नलिखित अनुक्रम से इसकी पुष्टि कर सकते हैं। सबसे पहले, हम एक फाइल बनाते हैं जिसमें टेक्स्ट के 12 अक्षर होते हैं:

मैसेंजर पर डिलीट मैसेज कैसे देखें
$ echo -n 'Hello, world' > foo

यह जांचने के लिए कि टेक्स्ट ASCII एन्कोडिंग में है, हम इसका उपयोग कर सकते हैं फ़ाइल आदेश:

$ file foo
foo: ASCII text, with no line terminators

अंत में, फ़ाइल द्वारा कब्जा की गई बाइट्स की सटीक संख्या प्राप्त करने के लिए, हम इसका उपयोग करते हैं राज्य आदेश:

$ stat -f%z foo
12

चूंकि यूनिकोड मानक वर्णों की एक बड़ी श्रेणी से संबंधित है, एक यूनिकोड फ़ाइल स्वाभाविक रूप से अधिक संग्रहण स्थान लेती है। वास्तव में कितना एन्कोडिंग पर निर्भर करता है।

एएससीआईआई में प्रदर्शित नहीं किए जा सकने वाले वर्ण का उपयोग करते हुए, पहले से कमांड के एक ही सेट को दोहराते हुए, निम्नलिखित देता है:

$ echo -n '€' > foo
$ file foo
foo: UTF-8 Unicode text, with no line terminators
$ stat -f%z foo
3

यूनिकोड फ़ाइल में वह एकल वर्ण 3 बाइट्स रखता है। ध्यान दें कि बैश स्वचालित रूप से एक UTF-8 फ़ाइल बनाता है क्योंकि ASCII फ़ाइल चुने हुए वर्ण (€) को संग्रहीत नहीं कर सकती है। UTF-8 अब तक यूनिकोड के लिए सबसे सामान्य वर्ण एन्कोडिंग है; UTF-16 और UTF-32 दो वैकल्पिक एनकोडिंग हैं, लेकिन इनका उपयोग बहुत कम किया जाता है।

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

ASCII यूनिकोड है, लेकिन यूनिकोड ASCII नहीं है

पश्चगामी संगतता के लिए, पहले 128 यूनिकोड कोड बिंदु समान ASCII वर्णों का प्रतिनिधित्व करते हैं। चूंकि यूटीएफ -8 इन वर्णों में से प्रत्येक को एक बाइट के साथ एन्कोड करता है, इसलिए कोई भी एएससीआईआई टेक्स्ट यूटीएफ -8 टेक्स्ट भी होता है। यूनिकोड ASCII का सुपरसेट है।

हालाँकि, जैसा कि ऊपर दिखाया गया है, ASCII के संदर्भ में कई यूनिकोड फ़ाइलों का उपयोग नहीं किया जा सकता है। कोई भी चरित्र जो सीमा से बाहर है, अप्रत्याशित तरीके से प्रदर्शित किया जाएगा, अक्सर प्रतिस्थापित वर्णों के साथ जो उन लोगों से पूरी तरह अलग होते हैं जिनका इरादा था।

आधुनिक उपयोग

अधिकांश उद्देश्यों के लिए, ASCII को बड़े पैमाने पर एक विरासत मानक माना जाता है। यहां तक ​​​​कि उन स्थितियों में भी जो केवल लैटिन लिपि का समर्थन करती हैं - जहां यूनिकोड की जटिलताओं के लिए पूर्ण समर्थन अनावश्यक है, उदाहरण के लिए - आमतौर पर यूटीएफ -8 का उपयोग करना और इसकी एएससीआईआई संगतता का लाभ उठाना अधिक सुविधाजनक होता है।

नेटफ्लिक्स पर लिमिटेड सीरीज क्या है?

विशेष रूप से, वेब पेजों को UTF-8 का उपयोग करके सहेजा और प्रसारित किया जाना चाहिए, जो कि HTML5 के लिए डिफ़ॉल्ट है। यह पहले वाले वेब के विपरीत है, जो डिफ़ॉल्ट रूप से ASCII में डील करता था, इससे पहले लैटिन 1 द्वारा प्रतिस्थापित किया गया था।

एक मानक जो बदल रहा है

एएससीआईआई का अंतिम संशोधन 1986 में हुआ था।

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

सम्बंधित: 100 सबसे लोकप्रिय इमोजी की व्याख्या

ASCII बनाम यूनिकोड

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

साझा करना साझा करना कलरव ईमेल ASCII टेक्स्ट क्या है और इसका उपयोग कैसे किया जाता है?

ASCII टेक्स्ट गुप्त दिखाई देता है, लेकिन इंटरनेट पर इसके कई उपयोग हैं।

आगे पढ़िए
संबंधित विषय
  • प्रौद्योगिकी की व्याख्या
  • emojis
  • शब्दजाल
  • वेब संस्कृति
  • यूनिकोड
लेखक के बारे में बॉबी जैक(58 लेख प्रकाशित)

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

बॉबी जैक . की अन्य फ़िल्में-टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें