असेंबली लैंग्वेज: आज विधानसभा कोड कैसे जानें

प्रकटीकरण: आपका समर्थन साइट को चालू रखने में मदद करता है! हम इस पृष्ठ पर हमारे द्वारा सुझाई गई कुछ सेवाओं के लिए एक रेफरल शुल्क कमाते हैं.


एक असेंबली भाषा एक अत्यंत निम्न-स्तरीय प्रोग्रामिंग भाषा है जिसमें मशीन कोड के लिए 1-टू -1 पत्राचार है – बाइनरी निर्देशों की श्रृंखला जो सीपीयू (या अन्य माइक्रोप्रोसेसर) में रजिस्टरों को मानों को अंदर और बाहर ले जाती है।.

परिचय

एक माइक्रोप्रोसेसर एक यांत्रिक कैलकुलेटर है। इसमें कई नामांकित रजिस्टर हैं, जो संख्याओं के लिए पेन रखने की तरह हैं। यह मशीन कोड के रूप में निर्देश प्राप्त करता है, जिसे बाइनरी बिट्स की श्रृंखला (1s और 0s) द्वारा दर्शाया जाता है। उदाहरण के लिए, यहाँ मशीन कोड की एक पंक्ति है:

10110000 01100001

पहले कुछ बिट्स (10110) एक रजिस्टर में एक मूल्य कॉपी करने के लिए एक निर्देश है। अगले तीन अंक (000) उस रजिस्टर की पहचान करते हैं जिसे मूल्य में कॉपी किया जाएगा। इसका बाकी (01100001) मूल्य है जिसे कॉपी किया जाना है.

बेशक १०११० व्यर्थ है, और कंप्यूटर “नहीं” जानता है कि इसका अर्थ है “मूल्य की प्रतिलिपि बनाएँ।” प्रोसेसर को डिज़ाइन किया गया है ताकि 10110 (ऑन-ऑफ-ऑन-ऑन-ऑफ) द्वारा प्रस्तुत विद्युत आवेगों की श्रृंखला वांछित परिणाम का कारण बनती है। यह “यांत्रिक” से अभिप्राय है।

अब यदि आप प्रोसेसर को निष्पादित करने के लिए एक कार्यक्रम लिखने जा रहे हैं, तो आप 1s की हजारों पंक्तियों को लिखने की कल्पना कर सकते हैं और 0s दोनों थकाऊ और त्रुटि प्रवण होंगे। इसका समाधान विधानसभा भाषा है। असेंबली भाषा बाइनरी कोड के लंबे तार के लिए मानव-समझने योग्य प्रतिस्थापन प्रदान करती है.

उदाहरण

उदाहरण के लिए, यदि 10110 का अर्थ है “मान को स्थानांतरित करें”, तो हम इसे MOV कमांड के साथ संक्षिप्त कर सकते हैं.

हम 000 रजिस्टर को याद रखने का आसान तरीका भी दे सकते हैं (इस मामले में, रजिस्टर का नाम AL है).

अंत में, हम एक अलग नंबरिंग सिस्टम में मान को प्रस्तुत कर सकते हैं, जैसे दशमलव (91) या हेक्सिडेसिमल (61)। यह रेखा 61 साल की MOV AL होगी। एक बार पूरे कार्यक्रम को इस तरह लिखे जाने के बाद, एक कोडांतरक प्रत्येक पंक्ति को उपयुक्त बाइनरी प्रतिनिधित्व में आसानी से अनुवाद कर सकता है.

प्रति सेकंड इन छोटे निर्देशों के अरबों प्रसंस्करण द्वारा कंप्यूटर काम करते हैं (गणना करते हैं, डेटा स्थानांतरित करते हैं, डेटा बदलते हैं).

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

विधानसभा भाषा संसाधन

ऑनलाइन संसाधन

ट्यूटोरियल और बुनियादी मार्गदर्शिकाएँ

  • ट्यूटोरियल पॉइंट से असेंबली प्रोग्रामिंग ट्यूटोरियल

  • X86 असेंबली लैंग्वेज प्रोग्रामिंग, फ्रीबीएसडी डेवलपर्स की हैंडबुक का एक अध्याय, जो ऑपरेटिंग सिस्टम डेवलपमेंट के संदर्भ में असेंबली भाषा लिखने में मदद करता है।

  • हैलो को X64 असेंबली कहें, कोड से कला ब्लॉग के रूप में विधानसभा के लिए काफी सौम्य परिचय

  • X86 असेंबली लैंग्वेज प्रोग्रामिंग, एक अन्य ट्यूटोरियल जो असेंबली लैंग्वेज को अपने OS प्रोग्रामिंग के संदर्भ में अच्छी तरह से रखता है, यह लिनक्स, विंडोज के संदर्भ में एक है, और मैक ओएस एक्स के बारे में भी थोड़ा सा

  • पीसी असेंबली लैंग्वेज, यह लिनक्स, विंडोज या फ्रीबीएसडी पर चलने वाले 32-बिट पीसी पर केंद्रित है

  • X86 असेंबली गाइड, यूनिवर्सिटी ऑफ वर्जीनिया कंप्यूटर साइंस विभाग से

  • वेबस्टर: असेंबली लैंग्वेज सीखने के लिए “इंटरनेट पर जगह के रूप में बिलिंग”, यह साइट द आर्ट ऑफ़ असेंबली लैंग्वेज के लेखक और एचएलए के आविष्कारक द्वारा (जाहिरा तौर पर) चलाई गई है।

  • लिनक्स विधानसभा ट्यूटोरियल

  • आसान X86-64

  • X86 विधानसभा

  • विंडोज असेंबली प्रोग्रामिंग ट्यूटोरियल (पीडीएफ)

वीडियो शिक्षण

  • असेंबली लैंग्वेज प्रोग्रामिंग ट्यूटोरियल, असेंबली पर 55-वीडियो सीरीज़, किप इरविन द्वारा x86 प्रोसेसर्स (6 वें संस्करण) के लिए असेंबली लैंग्वेज के बाद (यदि आप वीडियो को फॉलो नहीं कर रहे हैं, तो आप शायद हालिया संस्करण चाहते हैं)

  • असेंबली लैंग्वेज प्रोग्रामिंग वीडियो कोर्स, एक 70-भाग वीडियो श्रृंखला, जिसे आर्थर ग्रिफिथ द्वारा पढ़ाया जाता है, जो एक बहुत ही आकर्षक आकर्षण है

  • असेंबली लैंग्वेज इंट्रो, एक क्लास रूम लेक्चर कॉर्नेल में, जो असेंबली लैंग्वेज पेश करता है

  • असेंबली लैंग्वेज प्रोग्रामिंग, असेंबली के लिए एक घंटे का परिचय और एक बढ़िया प्रारूप यदि आप वास्तव में ओवर-हेड प्रोजेक्टर पर बीजगणित उदाहरणों का अनुसरण करना पसंद करते हैं, जब आप हाई स्कूल में थे (यह माइक्रोप्रोसेसरों और माइक्रोकंटर्स पर एक बड़ी श्रृंखला का हिस्सा है).

संदर्भ

  • X86 निर्देश सूची, x86 आर्किटेक्चर के लिए सभी निर्देशों की पूरी सूची, प्रत्येक जोड़े जाने पर नोट्स के साथ

  • X86 ओपकोड और निर्देश संदर्भ

  • इंटेल X86 असेंबली लैंग्वेज चीट शीट (पीडीएफ).

उपकरण

असेंबलर्स – बहुत सारे एसेम्बलर्स उपलब्ध हैं – यहाँ कुछ सबसे लोकप्रिय फ्री और ओपन सोर्स असेंबलर्स हैं:

  • एनएएसएम

  • FASM

  • YASM

  • GASM.

आईडीई (एकीकृत विकास वातावरण):

  • SASM, NASM, MASM, GAS, FASM असेंबली भाषाओं के लिए सरल क्रॉसप्लेट रिकॉर्डर IDE

  • फ्रेश आईडीई, बिल्ट-इन FASM असेंबलर के साथ विज़ुअल असेंबली भाषा IDE

  • WinAsm Studio, असेंबलर का उपयोग करके 32-बिट विंडोज और 16-बिट डॉस प्रोग्राम विकसित करने के लिए एक निशुल्क आईडीई

  • विजुअल MASM.

समुदाय और चल रहे सीखना

  • ड्रीम में मंच मंच। In.Code

  • MASM फोरम

  • हैक फ़ोरम में असेंबली लैंग्वेज और मशीन कोड

पुस्तकें

  • असेंबली लैंग्वेज पर आर्ट ऑफ़ असेंबली लैंग्वेज (ऑनलाइन संस्करण) सबसे लोकप्रिय किताबों में से एक है, जो हमेशा पढ़ने योग्य नो स्टार्च प्रेस से; आपको एक ही लेखक से भी इन पर दिलचस्पी हो सकती है: महान कोड लिखें: खंड 1: मशीन को समझना और महान कोड लिखना, खंड 2: निम्न-स्तर की सोच, उच्च-स्तरीय लेखन

  • असेंबली लैंग्वेज स्टेप-बाय-स्टेप: लिनक्स के साथ प्रोग्रामिंग

  • पेशेवर विधानसभा भाषा

  • एक्स 86 प्रोसेसर के लिए असेंबली भाषा

  • आधुनिक X86 असेंबली भाषा प्रोग्रामिंग: 32-बिट, 64-बिट, एसएसई और एवीएक्स

  • लिनक्स और ओएस एक्स के लिए 64 बिट असेंबली प्रोग्रामिंग के लिए: तीसरे संस्करण – लिनक्स और ओएस एक्स के लिए

  • 80X86 विधानसभा भाषा और कंप्यूटर वास्तुकला का परिचय

  • असेंबली लैंग्वेज प्रोग्रामिंग: पीसी और लैपटॉप कंप्यूटर के लिए.

क्या आपको असेंबली लैंग्वेज सीखनी चाहिए?

आपको विधानसभा भाषा सीखनी चाहिए या नहीं, यह इस बात पर निर्भर करता है कि आपके लक्ष्य क्या हैं। अधिकांश डेवलपर्स के लिए, उत्तर “नहीं” है।

असेंबली भाषा सीखने के दो प्राथमिक कारण हैं: क्योंकि आप इसे सीधे उपयोग करना चाहते हैं, या इसलिए कि आप कंप्यूटर को मूलभूत स्तर पर समझना चाहते हैं.

व्यावहारिक दृष्टिकोण से, दुनिया के इंजीनियरों और कंप्यूटर वैज्ञानिकों के एक रिश्तेदार मुट्ठी भर लोग वास्तव में विधानसभा भाषा का उपयोग करते हैं.

किसी भी प्रकार के लगभग सभी अनुप्रयोगों के विकास सहित सॉफ्टवेयर विकास का भारी बहुमत, उच्च स्तरीय प्रोग्रामिंग भाषाओं का उपयोग करता है, न कि असेंबली कोड का। कुछ विशिष्ट क्षेत्र जहां असेंबली भाषा का उपयोग किया जाता है वे हैं:

  • ऑपरेटिंग सिस्टम

  • फर्मवेयर

  • डिवाइस ड्राइवर

  • भाषा डिजाइन

  • संकलक डिजाइन

  • अंत: स्थापित प्रणाली

  • हार्डवेयर डिजाइन

  • उन्नत क्रिप्टोग्राफी

  • सैद्धांतिक कंप्यूटर विज्ञान

असेंबली लैंग्वेज सीखने का दूसरा कारण यह है कि किसी कंप्यूटर की हिम्मत की गहराई में जाने की बेहतर समझ हासिल करना। (यही कारण है कि वस्तुतः सभी कंप्यूटर विज्ञान की बड़ी कंपनियों को विधानसभा भाषा सीखना है।)

बेशक, अगर आप उस तरह के व्यक्ति हैं जो वास्तव में उस में रुचि रखते हैं, तो आप निम्न-स्तरीय सिस्टम डेवलपमेंट में काम करने वाले करियर के बारे में सोचना चाह सकते हैं।.

जानने के लिए अन्य बातें

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

असेंबली भाषा का इस्तेमाल कभी निर्वात में नहीं किया जाता है। विधानसभा को जानने के लिए जिस प्रकार के इंजीनियर की जरूरत होती है, वह उस क्षेत्र में काम करने की संभावना है जहां प्रभावी होने के लिए मुट्ठी भर अन्य कौशल जानने की आवश्यकता होती है। इन संभावनाओं में शामिल हैं:

  • हार्डवेयर भाषा, जैसे वीएचडीएल और वेरिलोग, माइक्रोप्रोसेसर और इलेक्ट्रिकल इंजीनियरिंग की अच्छी समझ के साथ

  • सी और उसके डेरिवेटिव जैसी निम्न-स्तरीय ऑपरेटिंग सिस्टम भाषाएँ: C ++, C #, और D

  • फोरट्रान और कोबोल जैसी विरासत भाषाओं

  • जावा और ऑब्जेक्टिव-सी जैसी प्लेटफार्म भाषाएं

  • एल्गोरिदम

  • संकलक, दुभाषिया और भाषा डिजाइन.

आगे पढ़ना और संसाधन

हमारे पास इस तरह के सामान पर बहुत अधिक जानकारी है, प्रोग्रामिंग: भाषाएँ, समयरेखा & गाइड.

आपको क्या कोड सीखना चाहिए?

किस प्रोग्रामिंग भाषा में आपको कोड करना सीखना चाहिए? हमारे इन्फोग्राफिक की जाँच करें, आपको क्या कोड सीखना चाहिए?

यह न केवल भाषाओं के विभिन्न पहलुओं पर चर्चा करता है, यह महत्वपूर्ण सवालों के जवाब देता है जैसे, “मैं एक जीवन के लिए प्रोग्रामिंग जावा को कितने पैसे कमाऊंगा?”

आपको क्या कोड सीखना चाहिए?
आपको क्या कोड सीखना चाहिए?

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map