उच्च स्तरीय क्रमादेशन भाषा
मशीनी भाषा और असेम्बली भाषा द्वारा क्रमादेश तैयार करने में आने वाली कठिनाई को देखते हुए कम्प्यूटर वैज्ञानिक इस शोध में जुट गए कि अब इस प्रकार की क्रमादेशन भाषा तैयार की जानी चाहिये जो कि कम्प्यूटर मशीन पर निर्भर न हो। कम्प्यूटर प्रोग्रामिंग भाषा के विकास का यह अगला कदम था। असेम्बलर के स्थान पर कम्पाइलर और इन्टरप्रेटर का विकास किया गया। अब कम्प्यूटर प्रोग्राम लिखने के लिये मशीनी भाषा को अंकीय क्रियान्वयन संकेतो के स्थान पर अक्षर चिन्ह स्मरणोपकारी का प्रयोग किया गया। कम्प्यूटर में प्रयोग की जाने वाली वह भाषा जिसमे अंग्रेजी अक्षरो, संख्याओ एवं चिन्हो का प्रयोग करके प्रोग्राम लिखा जाता है, उसे उच्च स्तरीय प्रोग्रामिंग भाषा कहा जाता है। इस भाषा में प्रोग्राम लिखना प्रोग्रामर के लिये बहुत ही आसान होता है, क्योंकि इसमे किसी भी निर्देश मशीन कोड में बदलकर लिखने की आवश्यकता नहीं होती। जैसे -BASIC, COBOL,FORTRAN,PASCAL|अब तो उच्च स्तरीय प्रोग्रामिंग भाषाओ का अत्यन्त विकास हो चुका है। इन प्रोग्रमिंग भाषाओ को कार्यानुसार चार वर्गो में विभाजित किया गया है- (१) वैज्ञानिक प्रोग्रामिंग भाषाएं- इनका प्रयोग मुख्यत: वैज्ञानिक कार्यो के लिये प्रोग्राम बनाने में होता है, परन्तु इनमे से कुछ भाषाएं ऎसी भी होती है जो वैज्ञानिक कार्यो के अलावा अन्य कार्यो को भी उतनी ही दक्षता से करती है। जैसे-ALGOL(Algorithmic language),BASIC,PASCAL,FORTRAN, आदि है। (२) व्यवसायिक प्रोग्रामिंग भाषाएं-व्यापारिक कार्यो से सम्बंधित जैसे-बही खाता, रोजानामचा, स्टाक आदि का लेखा जोखा आदि व्यापारिक प्रोग्रामिंग भाषाओ के प्रोग्राम द्वारा अत्यन्त सरलता से किया जा सकता है। जैसे-PL1(Programing language 1),COBOL, DBASE आदि। (३) विशेष उद्देश्य प्रोग्रामिंग भाषाएं-ये भाषाएं विभिन्न कार्यो को विशेष क्षमता के साथ करने के लिये प्रयोग की जाती है। जैसे- (अ)APL360- पेरीफिरल युक्तियां सर्वश्रेष्ठ अनुप्रयोग हेतु प्रयोग की जाती है। यह भाषा 1968 से प्रचलन में आई। (ब)LOGO- लोगो का विकास मात्र कम्प्यूटर शिक्षा को सरल बनाने हेतु किया गया। इस भाषा में चित्रण इतना सरल है कि छोटे बच्चे भी चित्रण कर सकते हैं। लोगो भाषा में चित्रण के लिये एक विशेष प्रकार की त्रिकोणाकार आकृति होती है जिसे टरटल कहते हैं। मॉनीटर पर प्रदर्शित रहता है लोगो भाषा के निर्देशो द्वारा यह टरटल, किसी भी तरफ घूम सकता है और आगे-पीछे चल सकता है। जब टरटल चलता है तो पीछे अपने मार्ग पर लकीर बनाता चलता है। इससे अनेक प्रकार के चित्रो को सरलता से बनाया जा सकता है। (४) बहुउद्देशीय भाषाएं- जो भाषाएं समान रूप से भिन्न-भिन्न प्रकार के अनेक कार्यो को करने की क्षमता रखती है, उन्हे बहुउद्देशीय भाषाएं कहते हैं। जैसे- BASIC,PASCAL,PL1|
(१) उच्च स्तरीय प्रोग्रामिंग भाषाए कम्प्यूटर मशीन पर निर्भर नहीं करती। यह एक अत्यन्त महत्वपूर्ण उपलब्धि है। प्रोग्राम के प्रयोगकर्ता के कम्प्यूटर बदलने पर अर्थात विभिन्न ALU और Control unit में भी यह प्रोग्राम सूक्ष्मतम सुधार के बाद समान रूप से चलता है। (२) इन भाषाओ में प्रयोग किये जाने वाले शब्द सामान्य अंग्रेजी भाषा में होते हैं। (३) इन प्रोग्रामिंग भाषाओ में गलतियो की सम्भावना कम होती है तथा गलतियो को जल्द ढूंढकर सुधारा जा सकता है। प्रयोग किया गया अनुवादक कम्पाइलर अथवा इन्टरप्रेटर प्रोग्राम में किस लाइन और निर्देश में गलती है यह स्वयं ही सूचित कर देता है। (४) प्रोग्राम लिखने में कम समय और श्रम लगता है।
(१) इन भाषाओ में लिखा गया प्रोग्राम चलने में मशीनी भाषा और असेम्बली भाषा में लिखे गये प्रोग्राम की अपेक्षा कम्प्यूटर की मुख्य स्मृति में अधिक स्थान घेरता है। (२) इन भाषाओ में लचीलापन नहीं होता है अनुवादको के स्वयं नियन्त्रित होने के कारण यह प्रोग्रामर के नियन्त्रण में नहीं होता है। लचीलेपन से तात्पर्य है कि कुछ विशेष कार्य इन प्रोग्रामिंग भाषाओ में नहीं किए जा सकते हैं अथवा अत्यन्त कठिनाई से साथ किए जा सकते हैं। फिर भी उच्च स्तरीय प्रोग्रामिंग भाषा की विशेषताएं उसकी परिसीमाओ की अपेक्षा अधिक प्रभावी होती है। अत: वर्तमान में यही भाषाएं प्रयोग की जाती है।
प्रोग्रामिंग भाषाओ के विकास के इतिहास पर नजर डाली जाए तो डॉ॰ ग्रेस हापर का नाम महत्वपूर्ण स्थान रखता है। इन्होने ही सन 1952 के आस-पास उच्च स्तरीय भाषाओ का विकास किया था। जिसमे एक कम्पाइलर का प्रयोग किया गया था। डॉ हापर के निर्देशन में दो उच्च स्तरीय प्रोग्रामिंग भाषाओ को विकसित किया गया पहली-FLOWMATIC और MATHEMATICS। FLOWMATIC एक व्यवसायिक प्रोग्रामिंग भाषा थी और MATHEMATICS एक अंकगणितीय गणनाओ में प्रयुक्त की जाने वाली भाषा। तब से लेकर अब तक लगभग 225 उच्च स्तरीय प्रोग्रामिंग भाषाओ का विकास हो चुका है। उदाहरण:FORTRAN, COBOL, BASIC, PASCAL।