Assembly language क्या है? प्रत्येक कंप्यूटर लॉजिकल निर्देश(कमांड) को तैयार कर सकता है जो उसके आउटपुट को नियंत्रित करता है. हालाँकि, एक कंप्यूटर इस तरह से आदेश जारी करता है जो हाई लेवल प्रोग्रामिंग और यूजर फ्रेंडली इंटरफ़ेस प्रदान करता है.
असेंबली लैंग्वेज अंग्रेजी के syntax को कंप्यूटर की प्रोसेसर की लॉजिकल मशीन लैंग्वेज में ट्रांसलेट करती है. यह कंप्यूटर प्रोग्रामिंग का एक महत्वपूर्ण कार्य है जो भिन्न-भिन्न प्रकार के आउटपुट और कमांड की अनुमति प्रदान करता है. ये कंप्यूटर की क्षमता में सुधार लाने का काम करते है.
आज इस लेख में विचार करने वाले है की असेंबली लैंग्वेज क्या है? ,यह क्यों महवत्पूर्ण है? यह कैसे काम करती है?, इसके प्रकार ,फायदे और नुकसान क्या है?
असेंबली लैंग्वेज क्या है?
असेम्ब्ली लैंग्वेज एक प्रोग्रामिंग लैंग्वेज है जो कंप्यूटर के हार्डवेयर के साथ कम्युनिकेट (संचार) करती है. अलग-अलग निर्माताये हार्डवेयर के कार्यो को करने के लिए मशीन लैंग्वेज का उपयोग करते है जैसे बाइनरी और हेक्साडेसीमल चरक्टेर।
इसका अर्थ यह है की आपको इनकी प्राथमिक भाषा को समझना और उपयोग करना कठिन है. असेम्ब्ली भाषा हार्डवेयर के निर्माता के मशीन भाषा और सॉफ्टवेयर के जटिल जटिल प्रोगरामिंग भाषाओ के बिच का एक सेतु है. जो हमारे लिए पढ़ने और समझने में आसान होता है. इसके उदहारण पाइथन और जावास्क्रिप्ट है.
असेंबली भाषाएं क्यों महत्वपूर्ण हैं?
असेम्ब्ली लैंग्वेज इसलिए महत्वपूर्ण है क्योंकि ये कंप्यूटर प्रोग्राम के द्वारा दिए गए कोड के कमांड को ऐसे निर्देशों में ट्रांसलेट करता है जिसे कंप्यूटर आसानी से समझ सकता है और एक्सेक्यूट कर सकता है.
यह ट्रांसलेशन विभिन्न प्रोग्रामर के द्वारा बनाये गए विभिन्न मशीनो को एक ही सॉफ्टवेयर का यूज़ करने की अनुमति प्रदान करती है. भिन्न-भिन्न कार्यो को कैसे नियंत्रण किया जाये, इसके लिए प्रत्येक मशीन के पास अपना इंटरनल कोड होता है जैसे:
- कीबोर्ड से इनपुट लेना
- स्क्रीन पर जानकारी डिस्प्ले करना
- माउस से इनपुट लेना
ये इन सभी कार्यो को मशीन की भाषा में तैयार करते है ,जिसके अधिकतर बाइनरी(0 और 1) का गुटबंदी होती है.
एक सॉफ्टवेयर डिज़ाइनर कंप्यूटर को एक्सेक्यूट करने के लिए मुश्किल कार्य उत्पन्न करते है जो बाइनरी में लिखा होता है, इसलिए ये सिमित होता है और अधिक समय लेता है. ये नाचिने की भाषा पर आधारित होने के बजाय प्रोग्रामिंग भाषा का उपयोग करते है. जो सामान्य शब्द, अंग्रेजी syntax और लॉजिकल ऑपरेशन होते है जैसे:
And
Or
Else
मशीन को समझने के लिए प्रोग्रामिंग भाषा को मशीन भाषा में बदलने की जरुरत है. एक असेंबली भाषा के बिना आप हाई लेवल लैंग्वेज(भाषा) का उपयोग नहीं कर सकते है.
असेंबली लैंग्वेज कैसे काम करती हैं?
एक असेंबली लैंग्वेज और हार्डवेयर संरचना में अंतर होता है. एक कंप्यूटर की संरचना में इसके मशीन कॉम्पोनेन्ट, हार्डवेयर डिज़ाइन, प्रोसेसर और अन्य मशीनो के साथ इसके संबंध होते है. विशिष्ट कंप्यूटर की संरचना में असेंबली भाषाएँ होती है जबकि असेंबली भाषा हार्डवेयर के लिए विलक्षण होती है. जिसका अर्थ होता है की असेंबली भाषा किसी भी प्रोग्रामिंग भाषा के साथ अनुकूल है.
असेम्ब्लेर एक ऐसा सॉफ्टवेयर प्रोग्राम है जो कमांड को मशीन कोड में बदल देता है.मशीन कोड उन सिग्नल से बने होते है जो विद्युत् सिग्नल को चालू या बंद करने का आदेश देते है. एक असेम्ब्लेर असेंबली लैंग्वेज से निर्देश को एकत्रित करता है और प्रत्येक कार्यो को विद्युत् सिग्नल की श्रंखला में ट्रांसलेट कर देता है.
असेम्ब्ली लैंग्वेज के महत्वपूर्ण घटक
Syntax
Syntax के नियम है जो असेंबली कोड को काम करने के योग्य बनाता है. वे नियम निचे दिए गए है:
- कोड की हर एक लाइन में 255 शब्द होने ही चाहिए।
- कोड की हर एक लाइन symbol, label, or directive(निर्देश) से शुरू होती है.
- मशीन quotation mark के अंदर किसी भी टेक्स्ट की उपेक्षा करती है.
- स्पेस करैक्टर कोड लाइन की सभी एलिमेंट को अलग करता है जैसे labels, directives or instructions.
Label
लेबल एक symbol होता है जो मशीन की मेमोरी के किसी पते के टेक्स्ट वरेरशन को दर्शाता है.
Command
कमांड और ऑपरेटर, symbol के बजाय logical expression (लॉजिकल व्यंजक) है. इसके पास विशेष मूल्य है जो कार्यो को दर्शाते है.
Instruction
instruction एक प्रकार का स्टेटमेंट है जिसे असेम्बलर मशीन कोड एक या इसके अधिक बाइट में ट्रांसलेट करता है.
Directive
directive भी एक प्रकार का स्टेटमेंट है जो हार्डवेयर के लिए execution योग्य निर्देश ट्रांसलेट नहीं करता है लेकिन असेंबली को पढ़ने में सुधार करने में मदत करता है. असेंबली कोड के उदाहरण,जैसे:
- ORG: या Origin (ओरिजिन)
- EQU: equate(समान)
- DS. B: एक बाइट के लिए जगह परिभाषित करता है.
Macro
macro भी एक प्रकार का स्टेटमेंट जो निर्देश और निर्देश के अनुक्रम के छोटे प्रतिरूप के रूप में कार्य करता है.
Mnemonic
mnemonic एक ऑपरेशन का छोटा नाम है यह किसी कार्य का symbolic नाम होता है जिसे मशीन की भाषा की तैयार किया जाता है.
असेंबली भाषा के प्रकार
असेंबली लैंग्वेज(भाषा) के 4 प्रकार होते है:
RISC: (Reduced Instruction-Set Computer)
DSP: (Digital Signal Processor)
CISC: Complex Instruction Set Computer
VLIW: Very Long Instruction Word
असेंबली लैंग्वेज की विशेषताएं
असेंबली लैंग्वेज की कुछ महत्वपूर्ण विशेषताएं है:
- डेसीमल करैक्टर का उपयोग डाटा को बताने के लिए किया जाता है.
- हार्डवेयर कार्यो के लिए हाई लेवल नियंत्रण होता है.
- यह अधिक तेज होते है क्युकी ये जरुरी साधन का उपयोग करने के लिए अनुकूल होते है.
- इसकी मेमोरी प्रबंधन अच्छा होता है.
- एक्सेस मेमोरी और हार्डवेयर को हाई लेवल लैंग्वेज का उपयोग करके एक्सेस नहीं कर सकते है.
- कोड को ऑप्टिमाइज़ करने के लिए कम्पाइलर का निर्भर नहीं होना पड़ता है.
- इसमें बग्स(त्रुटि) को ढूढ़ना काफी हद तक आसान होता है.
असेंबली भाषा का उपयोग
- ब्रेकपॉइंट निर्देश निष्पादित करने के लिए.
- बूटलोडर से एप्लिकेशन में संक्रमण के लिए.
- नियंत्रण लूप में कोड अनुकूलन के लिए.
- माइक्रोकंट्रोलर बुनियादी बातों को पढ़ाने के लिए.
असेंबली भाषा का लाभ
- कोड को ऑप्टिमाइज़ करते समय कम्पाइलर की जरूरत नहीं होती है.
- कम्पाइलर के त्रुटियों की तुलना में असेंबली के त्रुटियों को समझना और ठीक करना आसान होता है.
- अनुरूप आउटपुट प्राप्त करने के लिए कम मार्गदर्शन की जरूरत पड़ती है.
- इसमें inclusions और erasure करना आसान होता है.
- इसके डिवाइस श्रेढ़ीबांध होते है.
- इसमें कम मेमोरी की आवश्यकता होती है.
- इसमें निष्पादन समय भी कम लगता है.
असेंबली भाषा के नुकसान
- कोड को लिखने और संभालने के लिए बार-बार प्रयास करना पड़ता है.
- ज्यादातर समय के लिए कोड मइक्रोप्रोसेसर के लिए पोर्टेबल नहीं होता है.
- इसमें अल्गोरिथम की रचना सिमित होती है.
Assembly language Vs High Level Language
Assembly language:
- लो लेवल कंप्यूटिंग में एक प्रोसेसर के द्वारा बनाये गए प्रोग्रामर दूसरे प्रोसेसर में नहीं चलते है.
- लो लेवल कंप्यूटिंग के कोड का निष्पादन significant leval से बेहतर होता है.
- लो लेवल कंप्यूटिंग संरचना को कंप्यूटर पर कोड को चलाने के लिए नेतृत्व की आवश्यकता होती है.
- लो लेवल कंप्यूटिंग के कोड को significant leval के कोड की तुलना में समझना जटिल है.
- gathering code को elevated level language में बदलना मुश्किल है.
High level language:
- significant leval में एक प्रोसेसर के द्वारा बनाये गए प्रोफ्राम को प्रोसेसर के समूह चला सकते है.
- elevated level language के प्रोग्राम का निष्पादन लो लेवल कंप्यूटिंग संरचना से कम होता है.
- Elevated level dialects को कंप्यूटर पर कोड को चलाने के लिए अतिरिक्त नेतृत्व की आवश्यकता होती है.
- significant level language के कोड को लो लेवल कंप्यूटिंग संरचना के कोड की तुलना में आसान होता है.
- significant level language प्रोग्राम को सबसे पहले get together code बदल दिया जाता है.
Assembly language और High level language के बीच अंतर क्या है?
Assembly language | High level language |
---|---|
इसमें बदलने के लिए एक एक असेंबली चाहिए होता है. | इसमें बदलने के लिए एक कम्पाइलर या इंटरप्रेटर चाहिए होता है. |
इसमें असेंबली लैंग्वेज हो मशीन लैंग्वेज में बदला जाता है. | इसमें हाई लेवल लैंग्वेज को असेंबली लेवल लैंग्वेज में बदला जाता है ,इसके बाद असेंबली लेवल लैंग्वेज को मशीन लेवल लैंग्वेज में बदला जाता है. |
यह मशीन पर निर्भर होता है. | यह मशीन पर निर्भर नहीं होता है. |
इसमें mnemonics कोड उपयोग किया जाता है. | इसमें इंग्लिश स्टेटमेंट उपयोग किया जाता है. |
यह low-level operation को समर्थन देता है. | यह low-level operation को समर्थन नहीं देता है. |
इसमें हार्डवेयर के घटक को एक्सेस करना काफी आसान है. | इसमें हार्डवेयर के घटक को एक्सेस करना काफी मुश्किल है. |
👉पाइथन क्या है? यह इतना लोकप्रिय क्यों है? इसके उपयोग और विशेषताएं👈
👉Graphic Card क्या है? इसके प्रकार, कार्य, भाग, फायदे और नुकसान 👈