सामग्री पर जाएँ

अनुभाषक

किसी बहु-भाषी एवं बहु-लक्ष्यी (multi-target) कम्पाइलर की रचना का ब्लाक-आरेख

अनुभाषक या कम्पाइलर (compiler) एक या अधिक संगणक क्रमादेशों का समुच्चय होता है जो किसी उच्च स्तरीय कम्प्यूटर भाषा में लिखे क्रमादेश( प्रोग्राम) को किसी दूसरी कम्प्यूटर भाषा में बदल देता है। अनुभाषक शब्द प्रयोग प्राय ऐसे क्रमादेशों (प्रोग्रामों ) के लिए होता है जो उच्च स्तरीय भाषा के क्रमादेश को निम्न स्तरीय भाषा के क्रमादेश में बदलते है। जिस कम्प्यूटर भाषा में मूल प्रोग्राम है उसे स्रोत भाषा कहते हैं तथा इस प्रोग्राम को स्रोत कोड कहते हैं। इसी प्रकार जिस भाषा में स्रोत कोड को बदला जाता है उसे लक्ष्य-भाषा (target language) कहते हैं एवं इस प्रकार प्राप्त कोड को ऑब्जेक्ट कोड कहते हैं। ऑब्जेक्ट कोड प्रायः बाइनरी भाषा में होता है जिसे लेकर लिंकर किसी मशीन विशेष पर चलने लायक (executable) मशीन कोड पैदा करता है।

ऐसे कम्प्यूटर-प्रोग्राम जो किसी निम्न-स्तरीय कम्प्यूटर भाषा के प्रोग्राम कोलेकर किसी उच्च-स्तरीय भाषा का प्रोग्राम उत्पन्न करते हैं उन्हें अग्रभाषक या डिकम्पाइलर (decompiler) कहा जाता है।

ऐसा प्रोग्राम जो एक उच्च-स्तरीय कम्प्यूटर भाषा को दूसरी उच्च-स्तरीय कम्प्यूटर भाषा में बदलता है उसे कम्प्यूटर-भाषा अनुवादक (language translator) कहते हैं।

कम्पाइलर के प्रमुख कार्यकारी भाग

कम्पाइलर निम्नलिखित कार्य करता है। कुछ कम्पाइलरों में इसमें से कुछ भाग अनुपस्थित भी हो सकते हैं-

  • लेक्सिकल विश्लेषण (lexical analysis)
  • पार्जिंग (parsing)
  • सिमैंटिक विश्लेषण (semantic analysis)
  • कोड निर्माण (code generation)
  • कोड का इष्टतमीकरण (code optimization)
कम्पाइलर कई चरणों में काम करता है, किन्तु सामान्यतः सभी कम्पाइलरों को तीन मुख्य चरणों से निर्मित माना जा सकता है।

इतिहास

  • 1952 – आटॉकोड कम्पाइल का विकास, मार्क १ कम्प्यूटर के लिए।
  • 1954-1957 – IBM में FORTRAN भाषा का विकास, इसे प्रथम उच्च स्तरीय प्रोग्रामन भाषा माना जाता है। 1957 में इसके लिये कम्पाइलर भी निर्मित कर लिया गया।
  • 1959 – COBOL का विकास शुरू किया गया। इसकी डिजाइन पर A-0 और FLOW-MATIC का प्रभाव था। 1960 के दशक के आरम्भिक दिनों में COBOL का कम्पाइलर भी बन गया।
  • 1958-1962 – एम आई टी में LISP की डिजाइन हुई।

इन्हें भी देखें

बाहरी कड़ियाँ