Bottom-Up Parsing in Compiler Design in Hindi - बॉटम-अप पार्सिंग क्या है?
Bottom-Up Parsing in Compiler Design in Hindi - बॉटम-अप पार्सिंग क्या है?
बॉटम-अप पार्सिंग क्या है? (What is Bottom-Up Parsing?)
बॉटम-अप पार्सिंग (Bottom-Up Parsing) एक प्रकार की सिंटैक्स पार्सिंग तकनीक है, जिसका उपयोग कम्पाइलर में सिंटैक्स एनालिसिस के दौरान किया जाता है। इसे शिफ्ट-रिड्यूस पार्सिंग (Shift-Reduce Parsing) भी कहा जाता है। इस पार्सिंग विधि में इनपुट टोकन से प्रारंभ करते हुए धीरे-धीरे उच्च स्तर के नॉन-टर्मिनल को पुनर्निर्मित किया जाता है जब तक कि पूर्ण प्रारंभिक प्रतीक (Start Symbol) प्राप्त न हो जाए।
बॉटम-अप पार्सिंग की विशेषताएँ (Features of Bottom-Up Parsing)
- यह पार्सिंग इनपुट स्ट्रिंग से प्रारंभ होती है और धीरे-धीरे सिंटैक्स ट्री का निर्माण करती है।
- यह शिफ्ट और रिड्यूस ऑपरेशन पर आधारित होती है।
- इसमें ग्रामर के दाएं हिस्से (Rightmost Derivation) को रिवर्स में पुनर्निर्मित किया जाता है।
- इसका उपयोग LR पार्सर (LR(0), SLR(1), LALR(1), और CLR(1)) बनाने के लिए किया जाता है।
बॉटम-अप पार्सिंग के प्रकार (Types of Bottom-Up Parsing)
बॉटम-अप पार्सिंग मुख्य रूप से निम्नलिखित प्रकार की होती है:
| पार्सर का नाम | विवरण |
|---|---|
| Shift-Reduce Parsing | यह बॉटम-अप पार्सिंग की मूलभूत तकनीक है जो इनपुट टोकन को स्टैक में रखकर और उपयुक्त प्रोडक्शन नियमों को लागू करके पार्सिंग करती है। |
| LR Parsing | यह एक शक्तिशाली बॉटम-अप पार्सिंग तकनीक है जिसमें चार प्रकार शामिल होते हैं - LR(0), SLR(1), LALR(1), और CLR(1)। |
बॉटम-अप पार्सिंग के चरण (Steps of Bottom-Up Parsing)
बॉटम-अप पार्सिंग आमतौर पर निम्नलिखित चरणों में कार्य करती है:
- शिफ्ट (Shift): इनपुट से एक टोकन को स्टैक में डाला जाता है।
- रिड्यूस (Reduce): स्टैक में मौजूद टोकन को उपयुक्त प्रोडक्शन नियम द्वारा नॉन-टर्मिनल में परिवर्तित किया जाता है।
- स्वीकृति (Accept): जब पूरा इनपुट सही रूप से पार्स हो जाता है, तो पार्सर स्वीकृति प्रदान करता है।
- त्रुटि (Error): यदि इनपुट स्ट्रिंग दिए गए व्याकरण (Grammar) के अनुसार मान्य नहीं है, तो एक त्रुटि उत्पन्न होती है।
निष्कर्ष (Conclusion)
बॉटम-अप पार्सिंग कम्पाइलर डिजाइन में एक महत्वपूर्ण भूमिका निभाती है। यह विशेष रूप से उन स्थितियों में प्रभावी होती है जहाँ टॉप-डाउन पार्सिंग उपयुक्त नहीं होती। LR पार्सिंग बॉटम-अप तकनीक का एक उन्नत रूप है जो विभिन्न प्रकार के व्याकरणों को कुशलतापूर्वक पार्स करने में सक्षम होता है।
Related Articles
Code Improving Transformations in Compiler Design in Hindi | कोड इंप्रूविंग ट्रांसफॉर्मेशन
कोड इंप्रूविंग ट्रांसफॉर्मेशन (Code Improving Transformation...
Read More →Introduction to Global Data Flow Analysis in Compiler Design in Hindi | ग्लोबल डेटा फ्लो एनालिसिस का परिचय
ग्लोबल डेटा फ्लो एनालिसिस (Global Data Flow Analysis) क्या ह...
Read More →Loop Optimization in Compiler Design in Hindi | लूप ऑप्टिमाइजेशन
लूप ऑप्टिमाइजेशन (Loop Optimization) क्या है? Compiler Design ...
Read More →Dead Code Elimination in Compiler Design in Hindi | डेड कोड एलिमिनेशन
डेड कोड एलिमिनेशन (Dead Code Elimination) क्या है? Compiler Des...
Read More →Loops in Flow Graphs in Compiler Design in Hindi | फ्लो ग्राफ्स में लूप्स
फ्लो ग्राफ में लूप्स (Loops in Flow Graphs) क्या होते हैं?...
Read More →