Assembly Language Kya Hai | Assembly Language In Hindi | Assembly Language Tutorial In Hindi

 assembly language kya hai- असेंबली लैंग्वेज एक प्रकार की निम्न-स्तरीय प्रोग्रामिंग लैंग्वेज है जिसका उद्देश्य कंप्यूटर के हार्डवेयर के साथ सीधे संवाद करना है। मशीनी लैंग्वेज के विपरीत, जिसमें बाइनरी और हेक्साडेसिमल वर्ण होते हैं, असेंबली लैंग्वेजओं को मनुष्यों द्वारा readable होने के लिए डिज़ाइन किया गया है।

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

असेंबली language एक प्रकार की प्रोग्रामिंग language है जो उच्च स्तरीय लैंग्वेजेस को मशीनी लैंग्वेज में अनुवाद करती है।

यह सॉफ्टवेयर प्रोग्राम और उनके अंतर्निहित हार्डवेयर प्लेटफॉर्म के बीच एक आवश्यक ब्रिज है।

आज, असेंबल लैंग्वेजेस शायद ही कहीं कभी सीधे लिखी जाती हो, हालांकि वे अभी भी कुछ एप्लीकेशन niche में उपयोग की जाती हैं जैसे कि जब परफॉर्मेंस की आवश्यकताएं विशेष रूप से अधिक होती हैं।

असेंबली languages कैसे काम करती हैं

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

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

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

असेंबली लैंग्वेजेस का real world उदाहरण

आज, असेंबली लैंग्वेजेस कंप्यूटर विज्ञान के छात्रों द्वारा अध्ययन का विषय बनी हुई हैं, ताकि उन्हें यह समझने में मदद मिल सके कि आधुनिक सॉफ्टवेयर अपने अंतर्निहित हार्डवेयर प्लेटफॉर्म से कैसे संबंधित है। कुछ मामलों में, प्रोग्रामर को असेंबली लैंग्वेजओं में लिखना जारी रखना होता है, जैसे कि जब मांगें विशेष रूप से उच्च होती हैं, या जब प्रश्न में हार्डवेयर किसी भी मौजूदा उच्च-स्तरीय लैजगेजेस के साथ incompatible होता है।

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

इस्तेमाल

असेंबली languages शुरुआती कंप्यूटरों के लिए आवश्यक error वाली, टेडियस और समय लेने वाली पहली पीढ़ी की प्रोग्रामिंग को खत्म कर देती हैं, प्रोग्रामर को टेडियम से मुक्त करती हैं जैसे कि संख्यात्मक कोड याद रखना और एड्रेस की गणना करना।

एक समय में सभी प्रकार की प्रोग्रामिंग के लिए असेंबली लैंग्वेजओं का व्यापक रूप से उपयोग किया जाता था। हालाँकि, 1980 के दशक (माइक्रो कंप्यूटर पर 1990 के दशक) तक, बेहतर प्रोग्रामिंग उत्पादकता की तलाश में, उनके उपयोग को उच्च-स्तरीय लैंग्वेज द्वारा काफी हद तक दबा दिया गया। आज, असेंबली लैंग्वेज का उपयोग अभी भी डायरेक्ट हार्डवेयर manipulation, विशेष प्रोसेसर निर्देशों तक पहुंचाने, या महत्वपूर्ण प्रदर्शन मुद्दों को हल करने के लिए किया जाता है। सामान्य उपयोग इसके हैं, डिवाइस ड्राइवर, निम्न-स्तरीय एम्बेडेड सिस्टम और रीयल-टाइम सिस्टम इत्यादि।

Current usage

उच्च-स्तरीय लैंग्वेजओं  (high level languages) की तुलना में असेंबली लैंग्वेज की उपयोगिता और प्रदर्शन पर हमेशा बहस होती रही है।

वैसे तो असेंबली language में विशिष्ट niche के उपयोग होते हैं जहां यह बहुत अधिक महत्वपूर्ण है एवम इसके ऑप्टिमाइजेशन के लिए अन्य उपकरण भी हैं।

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

जिन applications में इसका आज भी इस्तेमाल किया जाता है

1.असेंबली लैंग्वेज आमतौर पर सिस्टम के बूट कोड में उपयोग की जाती है, निम्न-स्तरीय कोड जो ऑपरेटिंग सिस्टम को बूट करने से पहले सिस्टम हार्डवेयर को प्रारंभ और परीक्षण करता है और अक्सर रोम में संग्रहीत होता है। (आईबीएम-संगत पीसी सिस्टम पर BIOS और सीपी/एम एक उदाहरण है।)

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

3. कुछ कंपाइलर उच्च-स्तरीय लैंग्वेजओं को पूरी तरह से संकलित करने से पहले असेंबली में अनुवाद करते हैं, जिससे असेंबली कोड को डिबगिंग और ऑप्टिमाइज़ेशन उद्देश्यों के लिए देखा जा सकता है।

4. कुछ कंपाइलर निम्न-स्तरीय लैंग्वेजओं किं तुलना में ,पास्कल या सी, प्रोग्रामर को असेंबली लैंग्वेज को सीधे स्रोत कोड (तथाकथित इनलाइन असेंबली) में एम्बेड करने की अनुमति देते हैं। ऐसी सुविधाओं का उपयोग करने वाले प्रोग्राम तब प्रत्येक हार्डवेयर प्लेटफॉर्म पर अलग-अलग असेंबली लैंग्वेज का उपयोग करके एब्स्ट्रैक्शन का निर्माण कर सकते हैं। सिस्टम का पोर्टेबल कोड तब एक समान इंटरफ़ेस के माध्यम से इन प्रोसेसर-विशिष्ट components का उपयोग कर सकता है।

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

6.असेंबली लैंग्वेज का उपयोग execution की गति को बढ़ाने के लिए भी किया जाता है, विशेष रूप से सीमित प्रोसेसिंग शक्ति और रैम वाले पहले बने  पर्सनल कंप्यूटरों में।

7.असेंबलरों का उपयोग डेटा के ब्लॉक बनाने के लिए किया जा सकता है, बिना किसी उच्च-स्तरीय लैंग्वेज ओवरहेड के, फॉर्मेटेड और commented  किए गए सोर्स कोड से, जिसे अन्य कोड द्वारा उपयोग किया जा सकता है।

Summary

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

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

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

इन्हें भी पढ़े-

Gadi Number Check Karne Wala Apps Download 2022

Ladkiyon Se Baat Karne Wala Apps Download 2022

Jameen Napne Wala Apps Download 2022

Intagram Par Followers Badhane Wala App 2022

Instagram Par Like Badhane Wala App 2022

Leave a Comment