प्रोग्रामर विभिन्न प्रकार की कंप्यूटर भाषाओं का उपयोग करते हैं।
कंप्यूटर भाषा या प्रोग्रामिंग भाषा एक कोडित वाक्यविन्यास है जिसका उपयोग कंप्यूटर प्रोग्रामर द्वारा कंप्यूटर के साथ संचार करने के लिए किया जाता है। यह एकमात्र ऐसी भाषा है जिसे कंप्यूटर, सॉफ्टवेयर प्रोग्राम और कंप्यूटर हार्डवेयर समझ सकते हैं। कंप्यूटर भाषा सॉफ्टवेयर प्रोग्रामों के बीच संचार का प्रवाह स्थापित करती है। भाषा कंप्यूटर उपयोगकर्ता को यह निर्देश देने में सक्षम बनाती है कि डेटा को संसाधित करने के लिए कंप्यूटर को क्या आदेश देना चाहिए। कंप्यूटर भाषा विभिन्न प्रकारों में आती है जो वाक्य रचना के विभिन्न सेटों को नियोजित करती है।
मशीन भाषा
मशीनी भाषा या मशीन कोड कंप्यूटर की सेंट्रल प्रोसेसिंग यूनिट या सीपीयू द्वारा सीधे समझी जाने वाली मूल भाषा है। इस प्रकार की कंप्यूटर भाषा को समझना आसान नहीं है, क्योंकि यह कमांड उत्पन्न करने के लिए केवल एक बाइनरी सिस्टम का उपयोग करती है, एक अंकन तत्व जिसमें केवल एक और शून्य वाली संख्याओं की एक श्रृंखला होती है। कंप्यूटर के प्रोसेसर को प्रोग्राम चलाने या उपयोगकर्ता द्वारा परिभाषित कमांड करने से पहले उच्च-स्तरीय भाषाओं को इस भाषा में परिवर्तित करने की आवश्यकता होती है। एक निश्चित भाषा को मशीन कोड में बदलने के लिए, कंप्यूटर प्रोसेसर को एक कंपाइलर की आवश्यकता होती है, एक प्रोग्राम जो एक भाषा में लिखे गए सोर्स कोड को एक अलग भाषा सिंटैक्स में परिवर्तित करता है। कंपाइलर एक बाइनरी फ़ाइल, या निष्पादन योग्य फ़ाइल उत्पन्न करता है, जिसे सीपीयू निष्पादित करेगा। प्रत्येक कंप्यूटर प्रोसेसर का मशीन कोड का अपना सेट होता है। मशीन कोड यह निर्धारित करेगा कि कंप्यूटर प्रोसेसर को क्या करना चाहिए और इसे कैसे करना चाहिए।
दिन का वीडियो
विधानसभा स्तर की भाषा
1950 के दशक की शुरुआत में एक अध्ययन ने निम्न स्तर की भाषाओं या असेंबली स्तर की भाषा का विकास किया है। दूसरी पीढ़ी की भाषा के रूप में भी माना जाता है, असेंबली लेवल लैंग्वेज कोड का एक सेट है जो सीधे कंप्यूटर के प्रोसेसर पर चल सकता है। ऑपरेटिंग सिस्टम लिखने और डेस्कटॉप एप्लिकेशन को बनाए रखने में इस प्रकार की भाषा सबसे उपयुक्त है। यह प्रोग्रामर को रजिस्ट्री एक्सेस, मेमोरी मैनेजमेंट और क्लॉक साइकिल पत्राचार जैसे कई कार्य करने की अनुमति देता है। असेंबली स्तर की भाषा के साथ, प्रोग्रामर के लिए कमांड को परिभाषित करना आसान होता है क्योंकि जब वेरिएबल्स के नामकरण की बात आती है तो उसके पास विशेषाधिकार होता है। हालाँकि, यह भाषा लचीली नहीं है क्योंकि उपयोगकर्ता इस भाषा का उपयोग करके लिखे गए कोड के सेट का पुन: उपयोग नहीं कर सकता है। यह अपने अन्य समकक्षों की तुलना में उतना व्याख्यात्मक नहीं है। कंप्यूटर द्वारा प्रोग्रामर द्वारा लिखे गए आदेशों को संसाधित करने के लिए उपयोगकर्ता को इस भाषा को मशीनी भाषा में एन्क्रिप्ट करना होगा।
उच्च स्तरीय भाषा
उच्च स्तरीय भाषाओं का विकास तब हुआ जब कंप्यूटर प्रोग्रामर को कंप्यूटर की पोर्टेबिलिटी की बढ़ती कमी के बारे में समस्या होने लगी। उच्च स्तरीय भाषाएं निम्न स्तर की भाषाओं में पाए जाने वाले महत्वहीन विवरणों की उपेक्षा करती हैं। कई प्रोग्रामर उच्च स्तरीय भाषा को कंप्यूटर भाषाओं द्वारा लाई गई परेशानियों का एक महत्वपूर्ण समाधान मानते हैं क्योंकि इसके उपयोग में आसानी और बग उत्पन्न करने की कम प्रवृत्ति होती है। प्रोग्रामर अक्सर उच्च स्तरीय भाषाओं को मध्य स्तर की भाषाओं के रूप में संदर्भित करते हैं जो केवल अमूर्तता की अवधारणाओं का उपयोग करते हैं और चरम सीमा तक निर्माण करते हैं।