कंप्यूटर भाषाएँ: Machine से Python तक

लेखक: अभ्यास नीति | Last Updated: 13 अक्टूबर 2026

CPU सिर्फ़ 0 और 1 समझता है, पर programmer अंग्रेज़ी जैसे शब्दों में program लिखता है। यह दूरी कंप्यूटर भाषाओं के तीन स्तरों और translator नाम के program से पटती है।

कंप्यूटर भाषा instructions का वह set है जिससे इंसान computer को काम बताता है। इंसान के लिखे program को compiler, interpreter या assembler machine code में बदलता है, तभी CPU उसे चला पाता है। इस पेज में भाषाओं के तीन स्तर, 1GL से 4GL तक की पीढ़ियाँ, compiler बनाम interpreter का फर्क, C, C++, Java और Python का परिचय, एक ही program चारों भाषाओं में, याद रखने की ट्रिक और 10 प्रश्नों का क्विज़ है।

कंप्यूटर भाषाएँ — कोड ब्रैकेट और प्रोग्रामिंग स्तरों का चित्रण

इस पेज में

कंप्यूटर भाषा क्या है

कंप्यूटर भाषा नियमों से बँधे instructions का set है, जिससे programmer computer को बताता है कि क्या करना है। हर भाषा के अपने keywords और लिखने के नियम (syntax) होते हैं, और program इन्हीं instructions की एक क्रमबद्ध सूची है।

समस्या यह है कि CPU सिर्फ़ machine language समझता है। इंसान के लिए 0 और 1 में program लिखना व्यावहारिक नहीं है, इसलिए इंसान अपनी समझ वाली भाषा में लिखता है और translator नाम का program उसे machine language में बदल देता है। Computer की बुनियादी जानकारी के लिए Computer GK in Hindi पेज देखें।

भाषाओं के तीन स्तर

कंप्यूटर भाषाओं को machine से कितनी दूर हैं, इसके हिसाब से तीन स्तरों में बाँटा गया है:

स्तर भाषा इंसान के लिए Machine पर निर्भरता
निम्न स्तर (Low level) Machine language सबसे कठिन हर CPU की अलग
निम्न स्तर (Low level) Assembly language कठिन, पर machine से आसान हर CPU की अलग
उच्च स्तर (High level) C, C++, Java, Python अंग्रेज़ी जैसी, सबसे आसान एक code कई machines पर

निम्न स्तर की भाषाएँ hardware के क़रीब होती हैं और तेज़ चलती हैं, पर इन्हें लिखना कठिन है। उच्च स्तर की भाषाएँ इंसान के क़रीब होती हैं; एक बार लिखा program कई computers पर चलता है, पर उसे translator की ज़रूरत होती है।

Machine Language: सिर्फ़ 0 और 1

Machine language computer की अपनी भाषा है — binary digits 0 और 1 के pattern। CPU इसे सीधे समझता और चलाता है; किसी translator की ज़रूरत नहीं होती। Wikipedia के अनुसार machine code उसी CPU की native भाषा है, और हर instruction CPU को एक खास काम करने को कहता है, जैसे memory से register में data लाना या दो संख्याओं पर गणना करना।

इसकी तीन खास बातें याद रखें। पहली, यह हर CPU family (जैसे x86 या ARM) के लिए अलग होती है — एक CPU का machine code दूसरे पर नहीं चलता। दूसरी, इसे लिखना और पढ़ना इंसान के लिए बेहद कठिन और गलती-भरा काम है। तीसरी, यह सबसे तेज़ चलती है, क्योंकि बीच में कोई अनुवाद नहीं होता।

उदाहरण के लिए, नीचे एक machine instruction का binary रूप है (MIPS architecture से):

000000 00001 00010 00110 00000 100000

यह pattern CPU को कहता है: register 1 और register 2 को जोड़कर नतीजा register 6 में रखो। Bits और bytes की गिनती समझने के लिए Computer Memory पेज देखें।

Assembly Language: शब्दों वाली भाषा

Assembly language में binary pattern की जगह छोटे-छोटे शब्द (mnemonics) इस्तेमाल होते हैं, जैसे ADD (जोड़ने के लिए), SUB (घटाने के लिए) और MOV (एक जगह से दूसरी जगह data ले जाने के लिए)। ऊपर वाला binary instruction assembly में कुछ ऐसा दिखेगा:

ADD R6, R1, R2

यानी register 1 और register 2 को जोड़कर register 6 में रखो। Machine code की तुलना में यह इंसान के लिए समझने और याद रखने में आसान है।

पर computer अब भी सिर्फ़ binary समझता है, इसलिए assembly program को machine code में बदलने के लिए assembler नाम का translator लगता है। Assembly और machine instructions में लगभग एक-का-एक संबंध होता है। इसकी सीमा यह है कि हर CPU architecture की अपनी assembly होती है — एक machine का assembly program दूसरी machine पर नहीं चलता। आज assembly का इस्तेमाल device drivers, embedded systems और real-time systems जैसे कामों में होता है, जहाँ hardware पर सीधा control चाहिए।

High-Level Language: इंसानों जैसी भाषा

High-level भाषाएँ अंग्रेज़ी जैसे शब्दों में लिखी जाती हैं, इसलिए इन्हें लिखना, पढ़ना और सुधारना आसान है। इनमें programmer को hardware की जानकारी नहीं चाहिए होती, और एक ही program कई तरह के computers पर चल जाता है — इसी गुण को portability कहते हैं।

इसकी कीमत यह है कि high-level program को चलने से पहले machine language में बदलना पड़ता है, और यह काम compiler या interpreter करता है। उदाहरण: C, C++, Java, Python, FORTRAN, COBOL, BASIC, Pascal।

Language Generations: 1GL से 4GL

भाषाओं के विकास को पीढ़ियों (generations) में भी बाँटा गया है:

पीढ़ी भाषा का स्तर उदाहरण
1GL Machine language Binary code (0 और 1)
2GL Assembly language Mnemonics वाली भाषाएँ
3GL High-level language C, C++, Java, Python
4GL Database और खास कामों की भाषाएँ SQL

पहली दो पीढ़ियाँ निम्न स्तर की हैं, तीसरी से ऊपर उच्च स्तर की। 4GL खास मकसदों के लिए बनी, जैसे SQL database के कामों के लिए। ध्यान रहे: इनका computer की पीढ़ियों (पहली से पाँचवीं) से संबंध नहीं है — वह hardware की कहानी है, यह भाषाओं की। Computer की पीढ़ियाँ अलग पेज पर हैं।

Translator क्या करता है

Translator वह program है जो एक भाषा में लिखे instructions को दूसरी भाषा में — आख़िर में machine language में — बदलता है। तीन मुख्य translator हैं:

  • Assembler: assembly language को machine code में बदलता है।
  • Compiler: high-level भाषा के पूरे program को एक बार में machine code (object code) में बदलता है।
  • Interpreter: high-level भाषा के program को एक-एक line पढ़कर साथ-साथ machine code में बदलता और चलाता है।

Compiler बनाम Interpreter

परीक्षा में यह फर्क सबसे ज़्यादा पूछा जाता है:

बात Compiler Interpreter
अनुवाद पूरा program एक बार में एक-एक line, चलते समय
चलने की गति तेज़ धीमी
गलती कब दिखती है पूरे compile के बाद जिस line में गलती, वहीं रुक जाता है
सुधारने पर दोबारा पूरा compile करना पड़ता है तुरंत सुधारकर फिर चलाओ
चलाने के लिए बना हुआ object code काफ़ी है interpreter हर बार चाहिए
उदाहरण भाषाएँ C, C++, Java (bytecode तक) Python, JavaScript, Ruby, Perl

Java यहाँ खास है: इसका source code पहले bytecode में compile होता है, और फिर Java Virtual Machine (JVM) उस bytecode को चलाती है। यानी Java में compiler और interpreter दोनों का मेल है। इसी से Java का “write once, run anywhere” वाला गुण आता है — bytecode किसी भी JVM वाली machine पर बिना दोबारा compile किए चल जाता है।

चार मुख्य भाषाएँ: C, C++, Java, Python

C

C को 1972 में Bell Labs में Dennis Ritchie ने बनाया था, Unix operating system के कामों के लिए। यह compiled भाषा है और hardware के क़रीब होने के कारण operating systems के kernel, device drivers और embedded systems में इस्तेमाल होती है। 1989 में इसका मानक (ANSI standard) तय हुआ, और C से ही बाद की कई भाषाएँ निकलीं।

C++

C++ पर काम 1979 में Danish computer scientist Bjarne Stroustrup ने शुरू किया था। पहले इसका नाम “C with Classes” था, और 1985 में यह C++ के नाम से आई। यह C में object-oriented programming की सुविधा जोड़ती है। यह भी compiled भाषा है और game, operating system तथा बड़े software बनाने में इस्तेमाल होती है।

Java

Java को Sun Microsystems में James Gosling ने design किया, और यह May 1995 में आई। इसका code पहले bytecode में compile होता है, जिसे JVM किसी भी computer पर चलाती है — इसी को “write once, run anywhere” कहते हैं। Java mobile apps, बड़े business software और web के कामों में इस्तेमाल होती है।

Python

Python को 1980 के दशक के आख़िर में Dutch programmer Guido van Rossum ने सोचा, और 1991 में इसका पहला version आया। यह interpreted भाषा है और इसका syntax इतना साफ़ है कि शुरुआती programmers को सिखाने में इसका खूब इस्तेमाल होता है। आज Python data science, artificial intelligence और web development में सबसे ज़्यादा इस्तेमाल होने वाली भाषाओं में गिनी जाती है।

CPU जैसे शब्दों के full form के लिए Computer Full Form पेज देखें।

एक ही काम, चार भाषाओं में

“नमस्ते” छापने का program चारों भाषाओं में देखिए — फर्क खुद साफ़ होगा:

C:

#include <stdio.h>
int main() {
    printf("नमस्ते\n");
    return 0;
}

C++:

#include <iostream>
int main() {
    std::cout << "नमस्ते" << std::endl;
    return 0;
}

Java:

class Namaste {
    public static void main(String[] args) {
        System.out.println("नमस्ते");
    }
}

Python:

print("नमस्ते")

Python में एक ही line काफ़ी है, जबकि C, C++, Java और Python में program की बनावट लिखनी पड़ती है। यही वजह है कि Python शुरुआती लोगों के लिए आसान मानी जाती है — कम लिखना पड़ता है और interpreter तुरंत चलाकर नतीजा दिखा देता है।

कौन-सी भाषा कहाँ इस्तेमाल होती है

काम उपयुक्त भाषा
Operating system, device driver C, C++
Game और तेज़ चलने वाले software C++
Mobile apps, बड़े business software Java
Data science, AI, शुरुआती programming Python
Database के काम SQL (4GL)
Hardware पर सीधा control Assembly

यह कोई कठोर नियम नहीं है — एक काम कई भाषाओं में हो सकता है। चुनाव इस पर निर्भर करता है कि गति चाहिए, आसानी चाहिए या portability।

आम गलतियाँ

  • Machine language और assembly language को एक समझना। Machine सिर्फ़ 0 और 1 है; assembly में ADD, MOV जैसे शब्द होते हैं।
  • Compiler और interpreter को एक समझना। Compiler पूरा program एक बार में बदलता है; interpreter एक-एक line चलाते समय बदलता है।
  • यह सोचना कि high-level program CPU सीधे चलाता है। बिना translator के कोई high-level program नहीं चलता।
  • Java को पूरी तरह interpreted समझना। Java पहले bytecode में compile होती है, फिर JVM उसे चलाती है।
  • यह मानना कि machine language इंसान के लिए सबसे आसान होगी, क्योंकि यह computer की अपनी भाषा है। असल में इंसान के लिए यही सबसे कठिन है।

याद रखने की ट्रिक

स्तर याद रखने के लिए 1-2-3 गिनिए: 1GL में सिर्फ़ 0 और 1 (machine), 2GL में शब्द (assembly के mnemonics), 3GL में अंग्रेज़ी जैसी भाषा (high-level)।

Translator याद रखने के लिए: Assembler Assembly का, Compiler Complete (पूरा program एक बार में), Interpreter Incremental (एक-एक line, चलाते समय)।

क्विज़: 10 प्रश्न

Q1: Machine language किस रूप में लिखी जाती है?
A: 0 और 1 (binary) में
B: अंग्रेज़ी जैसे शब्दों में
C: गणित के सूत्रों में
D: चित्रों और icons में
ANS: A
WHY: Machine language सिर्फ़ binary digits 0 और 1 में लिखी जाती है, जिसे CPU सीधे चलाता है।

Q2: Assembly language को machine code में कौन बदलता है?
A: Compiler
B: Assembler
C: Interpreter
D: Debugger
ANS: B
WHY: Assembler assembly के mnemonic निर्देशों को machine code में बदलता है।

Q3: Compiler की पहचान क्या है?
A: Program को line-by-line चलाते समय बदलता है
B: सिर्फ़ गलतियाँ दिखाता है, बदलता नहीं
C: पूरे program को एक बार में machine code में बदलता है
D: Assembly को high-level भाषा में बदलता है
ANS: C
WHY: Compiler पूरे source program को पहले एक साथ machine code में बदलता है, फिर वह चलता है।

Q4: Interpreter की सबसे बड़ी पहचान क्या है?
A: Program को एक-एक line पढ़कर साथ-साथ चलाता है
B: Program की पहले .exe file बनाता है
C: सिर्फ़ machine language पढ़ता है
D: Internet से code download करता है
ANS: A
WHY: Interpreter translation और execution साथ-साथ, line by line करता है।

Q5: C language किसने और कब बनाई?
A: James Gosling, 1995
B: Guido van Rossum, 1991
C: Bjarne Stroustrup, 1985
D: Dennis Ritchie, 1972
ANS: D
WHY: C को 1972 में Bell Labs में Dennis Ritchie ने बनाया था।

Q6: Python को interpreted language क्यों कहा जाता है?
A: इसमें compiler बिल्कुल नहीं लगता
B: इसका code interpreter एक-एक line पढ़कर चलाता है
C: यह सिर्फ़ browser में चलती है
D: इसमें 0 और 1 लिखने पड़ते हैं
ANS: B
WHY: Python का code line by line interpret होकर चलता है, पहले पूरा compile नहीं होता।

Q7: Java "write once, run anywhere" कैसे करती है?
A: Source code सीधे हर CPU पर चलता है
B: हर OS के लिए अलग compiler लगता है
C: Code पहले bytecode में बदलता है, फिर JVM उसे चलाती है
D: Java में machine language लिखी जाती है
ANS: C
WHY: Java bytecode में compile होती है और JVM उसे किसी भी platform पर चलाती है।

Q8: First generation language (1GL) कौन-सी है?
A: Machine language
B: Assembly language
C: C language
D: SQL
ANS: A
WHY: 1GL machine language है, 2GL assembly और 3GL high-level भाषाएँ हैं।

Q9: C++ में C से सबसे बड़ा जुड़ाव क्या था?
A: Object-oriented programming की सुविधा
B: Binary code लिखना
C: Interpreter का इस्तेमाल
D: सिर्फ़ mathematical काम
ANS: B
WHY: C++ C में object-oriented features जोड़कर 1985 में आई।

Q10: Database के कामों के लिए बनी 4GL का उदाहरण क्या है?
A: C
B: Python
C: Assembly
D: SQL
ANS: D
WHY: SQL database management के लिए बनी fourth generation language है।

अक्सर पूछे जाने वाले सवाल

Compiler और interpreter में क्या अंतर है? Compiler पूरे program को पहले एक बार में machine code में बदलता है, फिर वह चलता है (जैसे C, C++)। Interpreter program को एक-एक line पढ़कर साथ-साथ चलाता है (जैसे Python)। Compiler से बना program तेज़ चलता है, interpreter से चलाना और सुधारना आसान होता है।

क्या high-level भाषा का program CPU सीधे चलाता है? चलाता तो आख़िर में CPU ही है, पर सीधे नहीं। Program पहले compiler, interpreter या assembler से machine language में बदलता है, तभी CPU उसे समझ पाता है।

Python शुरुआती लोगों के लिए आसान क्यों मानी जाती है? Python का syntax साफ़ और छोटा है — “नमस्ते” छापने में एक ही line लगती है। Wikipedia के अनुसार Python शुरुआती programming language के तौर पर खूब पढ़ाई जाती है। Interpreter तुरंत नतीजा दिखाता है, इसलिए सीखने में आसानी होती है।

Java “write once, run anywhere” कैसे करती है? Java का code पहले bytecode में compile होता है। यह bytecode किसी भी ऐसी machine पर चल जाता है जिसमें Java Virtual Machine (JVM) हो — दोबारा compile करने की ज़रूरत नहीं।

क्या assembly language आज भी इस्तेमाल होती है? हाँ। Device drivers, embedded systems और real-time systems में, जहाँ hardware पर सीधा और तेज़ control चाहिए, वहाँ आज भी assembly लिखी जाती है।

आगे पढ़ें

कंप्यूटर के और विषय, हर पेज पर जाँची हुई जानकारी और क्विज़:

स्रोत

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top