नमस्कार दोस्तों, Programming Language and Number System से संबंधित आज के ब्लॉग मे आपका स्वागत है। प्रोग्रामिंग की दुनिया में नंबर सिस्टम की समझ एक बुनियादी आवश्यकता है। कंप्यूटर केवल बाइनरी अंकों (0,1) को समझते हैं, और प्रोग्रामिंग लैंग्वेज इन नंबरों को कोड में बदलने का माध्यम है। इस ब्लॉग में, हम प्रोग्रामिंग लैंग्वेज और नंबर सिस्टम के बीच के गहरे संबंध को समझेंगे। कंप्यूटर की कार्यप्रणाली को समझने के लिए Programming Language and Number System का ज्ञान होना बहोत जरूरी है। तो चलिए शुरू करते हैं।
Table of Contents
- कंप्यूटर भाषा क्या है | What is Computer Language?
- प्रोग्रामिंग भाषा क्या है | What is Programming Language?
- प्रोग्रामिंग भाषाओं के प्रकार | Types of Programming Languages
- संख्या प्रणाली क्या है | What is Number System?
- अंतिम शब्द | Final Words
कंप्यूटर भाषा क्या है | What is Computer Language?
कंप्यूटर भाषा एक प्रोग्रामिंग भाषा है, जिसका उपयोग कंप्यूटरों को निर्देश देने के लिए किया जाता है। यह एक मानव-पठित रूप (Human Readable Form) में लिखे गए निर्देशों का संग्रह है, जिसे कंप्यूटर द्वारा समझा और निष्पादित किया जा सकता है।
प्रोग्रामिंग भाषा क्या है | What is Programming Language?
एक प्रोग्रामिंग भाषा एक नियमों और निर्देशों का संग्रह है, जिसे कंप्यूटर समझ और निष्पादित कर सकता है। यह मानवों के लिए कंप्यूटरों के साथ संवाद करने और उन्हें निर्देश देने का एक तरीका है कि क्या करना है। प्रोग्रामिंग भाषाओं का उपयोग सॉफ्टवेयर, ऐप्स, वेबसाइट्स और अन्य डिजिटल उत्पादों को विकसित करने के लिए किया जाता है।
प्रोग्रामिंग भाषाओं के प्रकार | Types of Programming Languages
प्रोग्रामिंग भाषाएं दो प्रकार की होती हैं;
- Low level language (निम्न स्तरीय भाषा)
- High Level Language (उच्च स्तरीय भाषा)
निम्न स्तरीय भाषा | Low Level Language (LLL)
निम्न स्तरीय भाषा (Low-Level Language) एक प्रकार की प्रोग्रामिंग भाषा है जो कंप्यूटर के हार्डवेयर के बहुत करीब होती है। यह भाषा कंप्यूटर के प्रोसेसर और मेमोरी के साथ सीधे संवाद करने के लिए डिज़ाइन की गई है।
निम्न स्तरीय भाषाओं के प्रकार:
- मशीन भाषा (Machine Language): यह कंप्यूटर की भाषा है जो कि प्रोसेसर द्वारा सीधे समझी जाती है। यह भाषा बाइनरी कोड (0,1) में लिखी जाती है। इसीलिए इसे बाइनरी भाषा भी कहते हैं।
- असेंबली भाषा (Assembly Language): यह एक निम्न स्तरीय भाषा है जो मशीन भाषा के समान है, लेकिन यह मानव-पठनीय प्रारूप में लिखी जाती है। इसमें सिंबल और शॉर्टकट का उपयोग किया जाता है। जैसे – SUB, MUL, ADD, DIV आदि।
- माइक्रोकोड (Microcode): यह एक निम्न स्तरीय भाषा है जो कंप्यूटर के प्रोसेसर के अंदरूनी कार्यों को नियंत्रित करने के लिए उपयोग की जाती है।
निम्न स्तरीय भाषाओं के लाभ:
- तेज़ प्रदर्शन (Fast Speed): निम्न स्तरीय भाषाएं कंप्यूटर के हार्डवेयर के साथ सीधे संवाद करती हैं, इसलिए वे तेज़ प्रदर्शन प्रदान करती हैं।
- अधिक नियंत्रण (Much Controlling): निम्न स्तरीय भाषाएं कंप्यूटर के हार्डवेयर पर अधिक नियंत्रण प्रदान करती हैं।
- कुशलता (Efficiency): निम्न स्तरीय भाषाएं कंप्यूटर के संसाधनों का अधिक कुशलता से उपयोग करती हैं।
निम्न स्तरीय भाषाओं की सीमाएं:
- जटिलता (Complexity): निम्न स्तरीय भाषाएं अधिक जटिल होती हैं और उनका उपयोग करना मुश्किल हो सकता है।
- पोर्टेबिलिटी (Portability): निम्न स्तरीय भाषाएं एक विशिष्ट कंप्यूटर प्लेटफ़ॉर्म के लिए डिज़ाइन की जाती हैं, इसलिए वे अन्य प्लेटफ़ॉर्म पर काम नहीं कर सकती हैं
उच्च स्तरीय भाषा | High Level Language (HLL)
उच्च स्तरीय भाषा (High-Level Language) एक प्रकार की प्रोग्रामिंग भाषा है जो कंप्यूटर के हार्डवेयर से दूर होती है और प्रोग्रामर के लिए अधिक सुविधाजनक और आसान होती है। प्रोग्रामर द्वारा उच्च स्तरीय भाषा को पढ़ना, प्रोग्राम कोड लिखना तथा कोड को डिबग करना व समझना निम्न स्तरीय भाषा की अपेक्षा सरल होता है।
उच्च स्तरीय भाषाओं के प्रकार:
- प्रोसीजरल भाषाएं (Procedural Languages): जैसे कि C, Python, Java
- फंक्शनल भाषाएं (Functional Languages): जैसे कि Lisp, Haskell
- ऑब्जेक्ट-ओरिएंटेड भाषाएं (Object-Oriented Languages): जैसे कि Java, C++, Python
- स्क्रिप्टिंग भाषाएं (Scripting Languages): जैसे कि Python, Ruby, Java Script
उच्च स्तरीय भाषाओं के लाभ:
- आसानी से प्रोग्रामिंग (Easy): उच्च स्तरीय भाषाएं प्रोग्रामर के लिए अधिक सुविधाजनक और आसान होती हैं।
- पोर्टेबिलिटी (Portability): उच्च स्तरीय भाषाएं अधिक पोर्टेबल होती हैं और विभिन्न प्लेटफ़ॉर्म पर काम कर सकती हैं।
- सुरक्षा (Security): उच्च स्तरीय भाषाएं प्रोग्रामर को अधिक सुरक्षित प्रोग्राम लिखने की अनुमति देती हैं।
उच्च स्तरीय भाषाओं की सीमाएं:
- धीमी गति (Slow Speed): उच्च स्तरीय भाषाएं निम्न स्तरीय भाषाओं की तुलना में धीमी गति से काम कर सकती हैं।
- कम नियंत्रण (Low Controlling): उच्च स्तरीय भाषाएं कंप्यूटर के हार्डवेयर पर कम नियंत्रण प्रदान करती हैं
उच्च स्तरीय भाषा को मशीनी भाषा में परिवर्तित (Convert) करने के लिए Compiler और Interpreter जैसे अनुवादक (Language Translator) का इस्तेमाल किया जाता है। उच्च स्तरीय भाषा का उपयोग यूजर द्वारा कंप्यूटर प्रोग्राम,सॉफ्टवेयर, गेम्स और वेबसाइटों को विकसित करने के लिए किया जाता है। आमतौर पर इस्तेमाल की जाने वाली कुछ उच्च स्तरीय भाषाएँ C, C++, Java, Python, HTML, PHP आदि हैं।
निम्न स्तरीय व उच्च स्तरीय भाषा मे अंतर | Difference Between Low Level and High Level Language
निम्न स्तरीय भाषा (LLL) | उच्च स्तरीय भाषा (HLL) |
यह एक मशीन फ्रेंडली भाषा है। | यह प्रोग्रामर फ्रेंडली भाषा है। |
निम्न स्तरीय भाषा कम मेमोरी इस्तेमाल करती है। | उच्च स्तरीय भाषा अधिक मेमोरी इस्तेमाल करती है। |
इसे समझना कठिन है। | इसे समझना आसान है। |
तुलनात्मक रूप से इसे डीबग करना जटिल है। | इसे डीबग करना आसान है। |
यह पोर्टेबल नहीं है। | यह पोर्टेबल है। |
यह मशीन पर निर्भर है। इसमे लिखा प्रोग्राम उसी मशीन पर रन होता है। | यह मशीन पर निर्भर नहीं है, इसमे लिखा प्रोग्राम किसी भी मशीन पर रन हो सकता है। |
Binary, Assembly इसके उदाहरण हैं। | BASIC, C, C++, JAVA, .NET, PHP, Python आदि इसके उदाहरण हैं। |
संख्या प्रणाली क्या है | What is Number System?
प्रोग्रामिंग लैंग्वेज और नंबर सिस्टम के बीच गहरा संबंध है, क्योंकि कंप्यूटर की मूल भाषा बाइनरी नंबर सिस्टम पर आधारित होती है। प्रोग्रामिंग लैंग्वेज के ज़रिए हम इन नंबरों को समझने योग्य कोड में बदलते हैं, जिससे कंप्यूटर हमारे निर्देशों का पालन कर सके। नंबर सिस्टम का ज्ञान प्रोग्रामर को डेटा को प्रभावी ढंग से मैनेज और प्रोसेस करने में मदद करता है। इसलिए, किसी भी प्रोग्रामिंग लैंग्वेज को गहराई से समझने के लिए नंबर सिस्टम की समझ आवश्यक है। नंबर सिस्टम मुख्य रूप से चार प्रकार के होते हैं।
1. दसमलव संख्या प्रणाली | Decimal Number System
Decimal Number System मे 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 तक 10 अंक होते हैं, इसलिए इनका आधार 10 होता है। इस Number System मे संख्याओं को दाहिने से बाएं गिना जाता है, पहला नंबर इकाई, दूसरा दहाई, तीसरा सैकड़ा, चौथा हजार तथा इसी तरह आगे दस हजार, लाख आदि होते हैं। Decimal Number System मे प्रत्येक अंक एक विशिष्ट स्थान पर होता है, इसलिए इनका स्थानीय मान 10 की विभिन्न घातों का गुणनफल होता है। जैसे- इकाई का मान 100, दहाई का मान 101, सैकड़ा का मान 102, हजार का 103 इसी तरह आगे भी।
उदारण के लिए 2508 संख्या मे इकाई के स्थान पर 8, दहाई के स्थान पर 0, सैकड़ा के स्थान पर 5 तथा हजार के स्थान पर 2 है इसलिए इनका मान निम्न प्रकार लिखा जा सकता है।
(2508)10
2×103 + 5×102 + 0×101 + 8×100
2000 + 500 + 0 + 8 = 2508
(2508)10
2. बाइनरी संख्या प्रणाली | Binary Number System
बाइनरी नंबर सिस्टम (Binary Number System) मे 0 और 1 दो अंक होते हैं, इसलिए इनका आधार भी दो होता है। इन दो अंकों (0,1) का उपयोग करके बनने वाली संख्याओं को बाइनरी संख्या कहा जाता है। बाइनरी नंबर सिस्टम इलेक्ट्रॉनिक डिवाइसों और कंप्यूटर सिस्टम में मशीनी भाषा के तौर पर इस्तेमाल होती है, क्योंकि इनके केवल दो स्टेट होते है, जहां 0 को OFF तथा 1 को ON से व्यक्त किया जाता है।
डेसीमल संख्या को बाइनरी संख्या में निम्न प्रकार से दर्शाया जाता है –
Decimal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
Binary | 0 | 1 | 10 | 11 | 100 | 101 | 110 | 111 | 1000 | 1001 |
बाइनरी संख्या को डेसीमल संख्या मे बदलना
(110101)2 = (?)10
1×25 + 1×24 + 0x23 + 1×22 + 0x21 + 1×20
32 + 16 + 0 + 4 + 0 + 1 = 53
(53)10
डेसीमल संख्या को बाइनरी मे बदलना
(53)10 = (?)2
बाइनरी आधार | डेसीमल संख्या | शेषफल |
2 | 53 | 1 |
2 | 26 | 0 |
2 | 13 | 1 |
2 | 6 | 0 |
2 | 3 | 1 |
1 |
उपरोक्त टेबल मे दिखाया गया है, कि डेसीमल संख्या 53 को बाइनरी आधार 2 से भाग दिया गया है तथा जो भी शेषफल 0 या 1 बचा उसे सामने शेषफल कॉलम मे लिखा गया तथा भागफल को नीचे। इसी प्रकार भागफल को तब तक 2 से भाग देते जाना है जब तक भागफल 0 या 1 न हो जाए। जब भागफल 0 या 1 हो जाए तो भागफल सहित नीचे से ऊपर की तरफ सभी शेषफल को बाएं से दायें लिखना है।
(110101)2
इस प्रकार हम बाइनरी (Binary) को डेसीमल (Decimal) मे तथा डेसीमल को बाइनरी मे बदल सकते हैं।
3. ऑक्टल संख्या प्रणाली | Octal Number System
Octal Number System मे 0, 1, 2, 3, 4, 5, 6, 7 तक 8 अंक होते है, इसलिए इनका आधार 8 होता है। ऑक्टल नंबर UTF8 नंबरों के प्रतिनिधित्व के लिए उपयोगी होते हैं।
आक्टल संख्या को डेसीमल संख्या मे बदलना
(27)8 = (?)10
2×81 + 7×80
16 + 7 = 23
(23)10
उदाहरण – 2
(4307)8 = (?)10
4×83 + 3×82 + 0×81 + 7×80
2048 + 192 + 0 + 7 = 2247
(2247)10
ऊपर बताए गए मेथड के द्वारा आक्टल संख्या को डेसीमल संख्या मे बदल सकते हैं।
आक्टल संख्या को बाइनरी मे बदलना
अब अगर आक्टल संख्या को बाइनरी मे बदलना हो तो पहले आक्टल का डेसीमल निकालेंगे, फिर डेसीमल संख्या को बाइनरी मे कन्वर्ट कर लेंगे।
4. हेक्साडेसीमल संख्या प्रणाली | Hexadecimal Number System
Hexadecimal Number System मे 0 से 9 तथा A से F तक 16 अंक होते है, इसलिए इनका आधार 16 होता है। 0 से 9 अंकों को डेसीमल संख्या प्रणाली में अंकों की तरह लिखा जाता है, लेकिन 10 से 15 अंकों को A से F के रूप में दर्शाया जाता है यानी 10 को A, 11 को B, 12 को C, 13 को D, 14 को E, और 15 को F के रूप में लिखा जाता है। हेक्साडेसिमल नंबर मेमोरी एड्रेस लोकेशन को संभालने के लिए उपयोगी होते हैं।
Decimal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 |
Hexadecimal | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
उदाहरण के लिए यहाँ BC12 एक हेक्साडेसीमाल संख्या है, इसे डेसीमल मे निम्न तरह बदलेंगे-
हेक्साडेसीमाल संख्या को डेसीमल संख्या मे बदलना
(BC12)16 = (?)10
11×163 + 12×162 + 1×161 + 2×160
45056 + 3072 + 16 + 2 = 48146
(48146)10
हेक्साडेसीमाल संख्या को बाइनरी संख्या मे बदलना
अब अगर हेक्साडेसीमल संख्या को बाइनरी मे बदलना हो तो पहले हेक्साडेसीमल का डेसीमल संख्या निकालेंगे, फिर डेसीमल संख्या को बाइनरी मे कन्वर्ट कर लेंगे।
अंतिम शब्द | Final Words
तो दोस्तों आज आपने Programming Language and Number System के बारे मे जाना। उम्मीद है आप को यह पोस्ट पसंद आई होगी। अगर आपके मन मे कोई प्रश्न या विचार है तो कमेन्ट बॉक्स के जरिए हमसे जरूर साझा करे, हमे आपकी कमेन्ट पर प्रतिक्रिया देने मे खुशी होगी। कंप्यूटर व आईटी जगत से जुड़े रहने के लिए हमे निम्न सोशल प्लेटफॉर्म पर जॉइन करें।
Facebook | Telegram | Instagram
धन्यवाद! आपका दिन शुभ हो।