क्या आपने कभी सोचा है कि कंप्यूटर कैसे काम करता है? जब हम कंप्यूटर पर कुछ टाइप करते हैं, कोई फोटो देखते हैं, या गाना सुनते हैं — तो कंप्यूटर इन सब चीज़ों को कैसे समझता है?
दरअसल, कंप्यूटर एक मशीन है जो केवल संख्याओं (Numbers) की भाषा समझती है। और वो भी एक खास तरह की संख्याएँ — जिन्हें हम नंबर सिस्टम (Number System) कहते हैं। जैसे हम इंसान 0 से 9 तक के अंकों का उपयोग करके गिनती करते हैं, वैसे ही कंप्यूटर भी अपने तरीके से संख्याओं को समझता और प्रोसेस करता है।
Number System की समझ के बिना कंप्यूटर को गहराई से समझना मुश्किल है । इस ब्लॉग में हम कंप्यूटर नंबर सिस्टम को एकदम आसान classroom-style भाषा में समझेंगे, साथ ही ASCII और Unicode जैसे महत्वपूर्ण कोडिंग सिस्टम भी सीखेंगे।
Table of Contents
- नंबर सिस्टम क्या होता है?
- 1. Decimal Number System
- 2. Binary Number System
- 3. Octal Number System
- 4. Hexadecimal Number System
- नंबर सिस्टम Conversion — Step by Step
- सभी नंबर सिस्टम की तुलना
- Real-Life उदाहरण और उपयोग
- Binary Arithmetic
- Complement in Binary
- Character Coding System (ASCII & Unicode)
- 📌 Exam Points / Notes & Tips
- Exam Oriented FAQs
नंबर सिस्टम क्या होता है? (What is Number System?)
परिभाषा: नंबर सिस्टम वह प्रणाली है जिसके द्वारा संख्याओं को लिखा, पढ़ा और समझा जाता है।
सरल भाषा में कहें तो — नंबर सिस्टम एक तरीका है जिससे हम संख्याओं को represent करते हैं। हर नंबर सिस्टम का एक Base (आधार) होता है, जिसे Radix भी कहते हैं। यह बताता है कि उस सिस्टम में कितने अलग-अलग अंक (Digits) use होते हैं।
कंप्यूटर में कितने नंबर सिस्टम होते हैं?
कंप्यूटर में मुख्यतः 4 प्रकार के नंबर सिस्टम उपयोग होते हैं:
| नंबर सिस्टम | Base | अंक (Digits) |
|---|---|---|
| Binary (बाइनरी) | 2 | 0, 1 |
| Octal (ऑक्टल) | 8 | 0, 1, 2, 3, 4, 5, 6, 7 |
| Decimal (डेसिमल) | 10 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 |
| Hexadecimal (हेक्साडेसिमल) | 16 | 0–9 और A, B, C, D, E, F |
1. Decimal Number System (दशमलव संख्या प्रणाली)
परिभाषा: Decimal Number System वह प्रणाली है जिसमें 0 से 9 तक दस अंकों का उपयोग होता है। इसका Base 10 होता है। यह सबसे आम नंबर सिस्टम है जिसे हम रोज़ाना जीवन में इस्तेमाल करते हैं।
विशेषताएँ
- इसका Base = 10
- Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
- हर digit की एक Place Value होती है — जैसे Ones, Tens, Hundreds आदि
उदाहरण (Example)
संख्या 245 को इस तरह समझें:
2 × 10² = 2 × 100 = 200 4 × 10¹ = 4 × 10 = 40 5 × 10⁰ = 5 × 1 = 5 ────────────────────────── कुल = 245
Exam Tip: Decimal को (245)₁₀ इस तरह लिखा जाता है — जहाँ नीचे 10 Base दर्शाता है।
2. Binary Number System (द्विआधारी संख्या प्रणाली)
परिभाषा: Binary Number System वह प्रणाली है जिसमें केवल 2 अंक — 0 और 1 — का उपयोग होता है। इसका Base 2 होता है। यह कंप्यूटर की मूल भाषा है। कंप्यूटर के अंदर सारा डेटा Binary (0 और 1) के रूप में store और process होता है।
Binary क्यों?
कंप्यूटर एक Electronic Machine है जो Electric Signals पर काम करती है:
- 0 = OFF (No Signal)
- 1 = ON (Signal Present)
इसीलिए कंप्यूटर Binary को सबसे आसानी से समझता है।
उदाहरण
Binary संख्या (1011)₂ का Decimal मान:
1 × 2³ = 1 × 8 = 8 0 × 2² = 0 × 4 = 0 1 × 2¹ = 1 × 2 = 2 1 × 2⁰ = 1 × 1 = 1 ───────────────────── कुल = 11 (Decimal)
महत्वपूर्ण शब्द: Bit: Binary digit (0 या 1) — यह डेटा की सबसे छोटी इकाई है।
3. Octal Number System (अष्टाधारी संख्या प्रणाली)
परिभाषा: Octal Number System एक ऐसी संख्या प्रणाली है जिसमें 8 अंक होते हैं — 0, 1, 2, 3, 4, 5, 6, 7। इसका Base (आधार) = 8 होता है।
विशेषताएँ
- Base = 8
- Digits: 0, 1, 2, 3, 4, 5, 6, 7
- यह Binary का एक shortcut रूप है
- पुराने Unix/Linux systems में इसका उपयोग होता था
उदाहरण
Octal संख्या (157)₈ का Decimal में रूपांतरण:
1 × 8² = 1 × 64 = 64 5 × 8¹ = 5 × 8 = 40 7 × 8⁰ = 7 × 1 = 7 ────────────────────── कुल = 111 (Decimal)
Octal और Binary का संबंध
हर Octal digit को 3 Binary bits से represent किया जाता है:
| Octal | Binary |
|---|---|
| 0 | 000 |
| 1 | 001 |
| 2 | 010 |
| 3 | 011 |
| 4 | 100 |
| 5 | 101 |
| 6 | 110 |
| 7 | 111 |
Trick: Binary को Octal में convert करने के लिए — Right से Left की ओर 3-3 bits के group बनाएं।
4. Hexadecimal Number System (षोडश-आधारी संख्या प्रणाली)
परिभाषा: Hexadecimal Number System वह प्रणाली है जिसमें 0 से 9 तक के अंक और A से F तक के अक्षरों का उपयोग होता है। इसका Base 16 होता है।
विशेषताएँ
- Base = 16
- Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
- A = 10, B = 11, C = 12, D = 13, E = 14, F = 15
- इसे Hex भी कहते हैं
Hexadecimal कहाँ उपयोग होता है?
- Colors in Web Design: जैसे #FF5733 — यह एक Hex color code है
- Memory Addresses: कंप्यूटर memory को Hex में address दिया जाता है
- Programming: Assembly Language और low-level programming में
उदाहरण
Hexadecimal (2F)₁₆ का Decimal में रूपांतरण:
2 × 16¹ = 2 × 16 = 32 F × 16⁰ = 15 × 1 = 15 ────────────────────── कुल = 47 (Decimal)
Hex और Binary का संबंध
हर Hexadecimal digit को 4 Binary bits से represent किया जाता है:
| Hex | Decimal | Binary |
|---|---|---|
| 0 | 0 | 0000 |
| 1 | 1 | 0001 |
| 5 | 5 | 0101 |
| 9 | 9 | 1001 |
| A | 10 | 1010 |
| B | 11 | 1011 |
| C | 12 | 1100 |
| D | 13 | 1101 |
| E | 14 | 1110 |
| F | 15 | 1111 |
नंबर सिस्टम Conversion — Step by Step
यह परीक्षा का सबसे महत्वपूर्ण भाग है। आइए हर Conversion को उदाहरण सहित समझें।
A. Decimal से Binary Conversion
नियम: जिस भी संख्या को Decimal से Binary में बदलना हो, उसे 2 से लगातार भाग देते रहें और प्रत्येक चरण में शेषफल (Remainder) को दाईं ओर नोट करते जाएँ। यह प्रक्रिया तब तक करें, जब तक भागफल (Quotient) 0 न हो जाए। अंत में Remainders को नीचे से ऊपर लिखें, यही दिए गए नंबर का बाइनरी है।
उदाहरण: (13)₁₀ को Binary में बदलें
13 ÷ 2 = 6 शेष 1 ↑ 6 ÷ 2 = 3 शेष 0 ↑ 3 ÷ 2 = 1 शेष 1 ↑ 1 ÷ 2 = 0 शेष 1 ↑ (ऊपर से पढ़ें) उत्तर: (1101)₂
B. Binary से Decimal Conversion
नियम: जिस भी संख्या को Binary से Decimal में बदलना हो, उसे दाईं ओर से 2 की घात 0, 1, 2, 3... से गुणा करते हुए आगे बढ़ें और सभी प्राप्त मानों को आपस में जोड़ दें। प्राप्त योग ही दी गई संख्या का Decimal रूप होता है।
उदाहरण: (1101)₂ को Decimal में बदलें
1×2³ + 1×2² + 0×2¹ + 1×2⁰ = 8 + 4 + 0 + 1 = 13 उत्तर: (13)₁₀
Exam Tip: गिनती हमेशा दाईं ओर (Right Side) से शुरू होती है और घात 0 से शुरू होकर बढ़ती है।
C. Decimal से Octal Conversion
नियम: जिस भी संख्या को Decimal से Octal में बदलना हो, उसे 8 से लगातार भाग देते रहें और प्रत्येक चरण में शेषफल (Remainder) को नोट करते जाएँ। यह प्रक्रिया तब तक करें जब तक भागफल (Quotient) 0 न हो जाए। अंत में Remainders को नीचे से ऊपर लिखें — यही उस संख्या का Octal रूप है।
उदाहरण: (65)₁₀ को Octal में बदलें
65 ÷ 8 = 8 शेष 1 ↑ 8 ÷ 8 = 1 शेष 0 ↑ 1 ÷ 8 = 0 शेष 1 ↑ उत्तर: (101)₈
D. Octal से Decimal Conversion
नियम: जिस भी संख्या को Octal से Decimal में बदलना हो, उसे दाईं ओर से 8 की घात 0, 1, 2, 3... से गुणा करते हुए आगे बढ़ते हैं और सभी प्राप्त मानों को आपस में जोड़ देंते है। प्राप्त योग ही दी गई संख्या का Decimal रूप होता है।
उदाहरण: (175)₈ को Decimal में बदलें
1 × 8² + 7 × 8¹ + 5 × 8⁰ = 64 + 56 + 5 = 125 उत्तर: (125)₁₀
E. Decimal से Hexadecimal Conversion
नियम: जिस भी संख्या को Decimal से Hexadecimal में बदलना हो, उसे 16 से लगातार भाग देते रहें और प्रत्येक चरण में शेषफल (Remainder) को नोट करते जाएँ। यह प्रक्रिया तब तक करें जब तक भागफल (Quotient) 0 न हो जाए। अंत में Remainders को नीचे से ऊपर (Bottom to Top) लिखें — यही उस संख्या का Hexadecimal रूप है।
नोट: Hexadecimal में 10 को A, 11 को B, 12 को C, 13 को D, 14 को E और 15 को F लिखा जाता है।
उदाहरण: (255)₁₀ को Hexadecimal में बदलें
255 ÷ 16 = 15 शेष 15 (F) ↑ 15 ÷ 16 = 0 शेष 15 (F) ↑ उत्तर: (FF)₁₆
F. Hexadecimal से Decimal Conversion
नियम: जिस भी संख्या को Hexadecimal से Decimal में बदलना हो, उसे दाईं ओर से 16 की घात 0, 1, 2, 3... (16⁰, 16¹, 16², 16³...) से गुणा करते हुए आगे बढ़ते हैं और सभी प्राप्त मानों को आपस में जोड़ देते हैं। प्राप्त योग ही दी गई संख्या का Decimal रूप होता है।
याद रखें: गुणा करते समय A की जगह 10, B की जगह 11... और F की जगह 15 का मान रखकर गुणा किया जाता है।
G. Binary से Octal Conversion
नियम: जिस भी Binary संख्या को Octal में बदलना हो, उसे दाईं ओर (Right Side) से शुरू करके 3-3 अंकों के समूह (Groups) में बाँट लेते हैं। यदि बाईं ओर (Left Side) अंतिम समूह में 3 अंक पूरे नहीं हों, तो उसके आगे आवश्यकतानुसार 0 (शून्य) लगा लेते हैं। इसके बाद प्रत्येक 3-अंकों के समूह का अलग-अलग Octal मान लिख देते हैं। सभी मानों को एक साथ लिखने पर संख्या का Octal रूप प्राप्त हो जाता है।
3-अंकों का Binary Code (4-2-1 नियम):
000 = 0 001 = 1 010 = 2 011 = 3 100 = 4 101 = 5 110 = 6 111 = 7
उदाहरण: (1011)₂ को Octal में बदलें
स्टेप 1: दाईं ओर से 3-3 अंकों के समूह बनाएँ। बाईं ओर 3 अंक पूरे न होने पर आगे 0 लगा दें।
001 | 011
स्टेप 2: प्रत्येक समूह का Octal मान लिखें।
001 = 1 011 = 3
स्टेप 3: दोनों मानों को एक साथ लिखें।
13 उत्तर: (13)₈
विशेष नोट: ध्यान रखें कि Binary से Octal में भाग (Division) या गुणा (Multiplication) विधि द्वारा सीधे (Direct) परिवर्तन नहीं किया जाता है। यदि आप भाग या गुणा विधि का उपयोग करना चाहते हैं, तो आपको दो चरणों में कार्य करना होगा — पहले Binary संख्या को Decimal में बदलें, फिर प्राप्त Decimal संख्या को 8 से भाग देकर Octal में बदलें।
H. Binary से Hexadecimal Conversion
नियम: जिस भी Binary संख्या को Hexadecimal में बदलना हो, उसे दाईं ओर (Right Side) से शुरू करके 4-4 अंकों के समूह (Groups) में बाँट लेते हैं। यदि बाईं ओर (Left Side) अंतिम समूह में 4 अंक पूरे नहीं हों, तो उसके आगे आवश्यकतानुसार 0 (शून्य) लगा लेते हैं। इसके बाद प्रत्येक 4-अंकों के समूह का अलग-अलग Hexadecimal मान लिख देते हैं। सभी मानों को एक साथ लिखने पर संख्या का Hexadecimal रूप प्राप्त हो जाता है।
याद रखने के लिए 4-अंकों का Binary Code (8-4-2-1 नियम):
| Binary | Value |
|---|---|
| 0000 | 0 |
| 0001 | 1 |
| 0010 | 2 |
| 0011 | 3 |
| 0100 | 4 |
| 0101 | 5 |
| 0110 | 6 |
| 0111 | 7 |
| 1000 | 8 |
| 1001 | 9 |
| 1010 | A = 10 |
| 1011 | B = 11 |
| 1100 | C = 12 |
| 1101 | D = 13 |
| 1110 | E = 14 |
| 1111 | F = 15 |
उदाहरण: (11010111)₂ को Hexadecimal में बदलें
स्टेप 1: दाईं ओर से 4-4 अंकों के समूह बनाएँ।
1101 | 0111
स्टेप 2: प्रत्येक समूह का Hexadecimal मान लिखें।
- 1101 = D
- 0111 = 7
स्टेप 3: दोनों मानों को एक साथ लिखें।
D7 उत्तर: (D7)₁₆
विशेष नोट: ध्यान रखें कि Binary से Hexadecimal में भाग (Division) या गुणा (Multiplication) विधि द्वारा सीधे (Direct) परिवर्तन नहीं किया जाता है। यदि आप भाग या गुणा विधि का उपयोग करना चाहते हैं, तो आपको दो चरणों में कार्य करना होगा — पहले Binary संख्या को Decimal में बदलें, फिर प्राप्त Decimal संख्या को 16 से भाग देकर Hexadecimal में बदलें।
सभी नंबर सिस्टम की तुलना (Comparison Table)
| विशेषता | Decimal | Binary | Octal | Hexadecimal |
|---|---|---|---|---|
| Base | 10 | 2 | 8 | 16 |
| अंकों की संख्या | 10 | 2 | 8 | 16 |
| Digits | 0-9 | 0,1 | 0-7 | 0-9, A-F |
| उपयोग | दैनिक जीवन | कंप्यूटर | Unix Systems | Memory, Colors |
| Representation | (n)₁₀ | (n)₂ | (n)₈ | (n)₁₆ |
Real-Life उदाहरण और उपयोग
Binary का उपयोग
- कंप्यूटर के processor में सभी calculations Binary में होती हैं
- Hard Disk, RAM में data Binary में store होता है
- Internet data भी Binary packets में भेजा जाता है
Octal का उपयोग
- Linux/Unix file permissions में (जैसे chmod 755)
- पुराने Digital Systems में
Hexadecimal का उपयोग
- Web colors: #FFFFFF (White), #000000 (Black), #FF0000 (Red)
- IP Addresses (IPv6): 2001:0db8:85a3:0000
- Assembly Language programming
- Memory Dump और Debugging में
Binary Arithmetic (बाइनरी अंकगणित)
कंप्यूटर में सभी गणनाएँ Binary में होती हैं। आइए Binary के basic operations समझें।
1. Binary Addition (जोड़)
नियम:
0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 (0 लिखो, 1 carry)
उदाहरण: 1011 + 1101
1011 + 1101 ────── 11000
2. Binary Subtraction (घटाव)
नियम:
0 - 0 = 0 1 - 0 = 1 1 - 1 = 0 0 - 1 = 1 (1 borrow करो)
उदाहरण: 1101 - 1010
1101 - 1010 ────── 0011
3. Binary Multiplication (गुणा)
नियम:
0 × 0 = 0 0 × 1 = 0 1 × 0 = 0 1 × 1 = 1
उदाहरण: 101 × 11
101
× 011
─────
101 (101 × 1)
1010 (101 × 1, shift left)
──────
1111
Complement in Binary (बाइनरी कम्पलीमेंट)
Complement का अर्थ होता है किसी संख्या का पूरक (पूरा करने वाला मान)। कंप्यूटर में Complement का उपयोग मुख्य रूप से Binary Subtraction, Negative Numbers को दर्शाने तथा Digital Circuits में किया जाता है।
1's Complement
किसी भी Binary संख्या के प्रत्येक 0 को 1 तथा प्रत्येक 1 को 0 से बदल देने पर प्राप्त संख्या 1's Complement कहलाती है।
उदाहरण: (1011)₂ का 1's Complement
1011 → 0100
2's Complement
किसी Binary संख्या के 1's Complement में 1 जोड़ने पर प्राप्त संख्या 2's Complement कहलाती है।
उदाहरण: (1011)₂ का 2's Complement
1's Complement of 1011 = 0100 0100 + 1 = 0101 उत्तर: 0101
Exam Point: Negative numbers को कंप्यूटर में 2's Complement के रूप में store किया जाता है।
Computer Character Coding System (कैरेक्टर कोडिंग सिस्टम)
जिस प्रकार कंप्यूटर गणितीय गणनाओं के लिए Number System का उपयोग करता है, उसी प्रकार कंप्यूटर टेक्स्ट, अक्षरों (Letters), और चिन्हों (Symbols) को समझने के लिए Character Coding System का उपयोग करता है। सरल शब्दों में कहें तो, जब आप कीबोर्ड पर कोई बटन (जैसे 'A' या '#') दबाते हैं, तो कंप्यूटर उसे एक निश्चित नंबर कोड में बदल देता है।
कंप्यूटर में मुख्य रूप से दो कोडिंग सिस्टम का सबसे ज़्यादा उपयोग किया जाता है:
1. ASCII (American Standard Code for Information Interchange)
ASCII मुख्य रूप से अंग्रेजी भाषा के अक्षरों, अंकों और बुनियादी चिन्हों के लिए बनाया गया सबसे पहला और लोकप्रिय कोडिंग सिस्टम है। जब हम कीबोर्ड से कोई अंग्रेजी का अक्षर दबाते हैं, तो कंप्यूटर उसे समझने के लिए एक ASCII नंबर में बदलता है।
मुख्य बिंदु:
- यह मूल रूप से 7-बिट (7-bit) का कोड होता है, जिसमें कुल 128 कैरेक्टर्स (0 से 127 तक) को स्टोर किया जा सकता है।
- बाद में इसका Extended ASCII (8-bit) वर्जन आया, जिसमें कुल 256 कैरेक्टर्स (0 से 255 तक) होते हैं।
उदाहरण (ASCII Value):
- कंप्यूटर में कैपिटल 'A' का ASCII मान 65 होता है (बाइनरी में: 01000001)।
- स्मॉल 'a' का ASCII मान 97 होता है (बाइनरी में: 01100001)।
- कीबोर्ड के Space Bar (स्पेस) का ASCII मान 32 होता है।
2. Unicode (Universal Coded Character Set)
ASCII कोड केवल अंग्रेजी भाषा तक ही सीमित था, इसलिए दुनिया की अन्य सभी भाषाओं (जैसे- हिंदी, चीनी, जापानी, अरबी आदि) और आधुनिक इमोजी (Emojis) को कंप्यूटर पर प्रदर्शित करने के लिए Unicode को बनाया गया। यह दुनिया के हर एक कैरेक्टर या अक्षर को एक यूनिक नंबर (Unique Number) प्रदान करता है, चाहे वह कोई भी भाषा या सॉफ्टवेयर हो।
मुख्य बिंदु:
- यह एक Universal कोडिंग सिस्टम है, जो दुनिया की लगभग सभी लिपियों (Scripts) को सपोर्ट करता है।
- इसके सबसे लोकप्रिय फॉर्मेट UTF-8, UTF-16 और UTF-32 हैं (यहाँ 'UTF' का मतलब Unicode Transformation Format है)।
- आज पूरे इंटरनेट और वेबसाइट्स पर सबसे ज्यादा UTF-8 का ही उपयोग किया जाता है।
उदाहरण (Unicode Value):
- हिंदी के देवनागरी अक्षर 'अ' का यूनिकोड मान U+0905 होता है।
- हिंदी के अक्षर 'क' का यूनिकोड मान U+0915 होता है।
ASCII vs Unicode — तुलना
| विशेषता | ASCII | Unicode |
|---|---|---|
| Full Form | American Standard Code for Information Interchange | Universal Coded Character Set |
| बिट्स | 7-bit (128) / 8-bit (256) | 8 से 32 bits तक |
| Characters | 128 या 256 | 1,40,000 से अधिक |
| भाषा समर्थन | केवल English | दुनिया की सभी भाषाएँ |
| Emoji Support | नहीं | हाँ |
| उपयोग | पुराने Systems | आधुनिक Computers/Internet |
| Example Format | ASCII | UTF-8, UTF-16, UTF-32 |
विशेष नोट: आसान शब्दों में समझें तो, ASCII कंप्यूटर को केवल अंग्रेजी भाषा सिखाता है, जबकि Unicode कंप्यूटर को दुनिया की सभी भाषाएँ (हमारी मातृभाषा हिंदी सहित) और आधुनिक इमोजी (😊, 👍) पढ़ना और लिखना सिखाता है। इसीलिए आज के आधुनिक कंप्यूटरों और इंटरनेट पर Unicode (विशेषकर UTF-8) का ही सबसे ज्यादा उपयोग किया जाता है।
📌 Notes और Tips (नोट्स और सुझाव)
- Binary में n bits से अधिकतम (2ⁿ - 1) तक की संख्या represent होती है
- 8 bits से 0 से 255 तक (256 values) represent होती हैं
- कंप्यूटर केवल Binary भाषा समझता है — 0 और 1
- सभी Conversions में Base का ध्यान रखें
- Hexadecimal में A-F अक्षर 10 से 15 को दर्शाते हैं
- 2's Complement का उपयोग Negative Numbers के लिए होता है
- ASCII केवल English के लिए है, जबकि Unicode सभी भाषाओं के लिए है
- Binary Conversion में हमेशा नीचे से ऊपर पढ़ें
Study Tips
- पहले Decimal to Binary Conversion practice करो
- फिर Binary to Decimal का अभ्यास करो
- उसके बाद Octal और Hexadecimal
- ASCII के कुछ common codes (A-Z, 0-9) याद करो
- Conversion Table याद करो — इससे समय बचेगा
- रोज़ 5-10 Practice Problems solve करो
