क्या आपने कभी सोचा है कि कंप्यूटर कैसे काम करता है? जब हम कंप्यूटर पर कुछ टाइप करते हैं, कोई फोटो देखते हैं, या गाना सुनते हैं — तो कंप्यूटर इन सब चीज़ों को कैसे समझता है?
दरअसल, कंप्यूटर एक मशीन है जो केवल संख्याओं (Numbers) की भाषा समझती है। और वो भी एक खास तरह की संख्याएँ — जिन्हें हम नंबर सिस्टम (Number System) कहते हैं। जैसे हम इंसान 0 से 9 तक के अंकों का उपयोग करके गिनती करते हैं, वैसे ही कंप्यूटर भी अपने तरीके से संख्याओं को समझता और प्रोसेस करता है।
अगर आप ITI COPA, DCA, PGDCA, BCA या किसी भी Computer Competitive Exam की तैयारी कर रहे हैं, तो Number System का टॉपिक आपके लिए बहुत महत्वपूर्ण है — लगभग हर एग्जाम में इससे 2 से 5 प्रश्न सीधे पूछे जाते हैं। इतना ही नहीं, Programming सीखते समय भी Data Types, Memory Allocation और Computer Architecture को समझने के लिए इसकी नींव मजबूत होनी ज़रूरी है। Number System की समझ के बिना कंप्यूटर को गहराई से समझना मुश्किल है।
इस ब्लॉग में हम कंप्यूटर नंबर सिस्टम को एकदम आसान classroom-style भाषा में समझेंगे, साथ ही ASCII, EBCDIC और Unicode जैसे महत्वपूर्ण Character Coding सिस्टम भी सीखेंगे।
Table of Contents
- नंबर सिस्टम, Base और Radix क्या होता है?
- 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, EBCDIC & Unicode)
- Character Coding का संक्षिप्त इतिहास
- 📌 Exam Points / Notes & Tips
- Students अक्सर जो गलतियाँ करते हैं
- Practice Questions
- Summary — आज आपने क्या सीखा
- Exam Oriented FAQs
नंबर सिस्टम क्या होता है? (What is Number System?)
परिभाषा: नंबर सिस्टम वह प्रणाली है जिसके द्वारा संख्याओं को लिखा, पढ़ा और समझा जाता है।
सरल भाषा में कहें तो — नंबर सिस्टम एक तरीका है जिससे हम संख्याओं को represent करते हैं। हर नंबर सिस्टम का एक Base (आधार) होता है, जिसे Radix भी कहते हैं। यह बताता है कि उस सिस्टम में कितने अलग-अलग अंक (Digits) use होते हैं।
Base, Radix और Digit — तीनों में अंतर समझें
एग्जाम में अक्सर छात्र Base और Digit को लेकर confuse हो जाते हैं। नीचे तीनों शब्दों को अलग-अलग समझते हैं:
- Digit: किसी Number System में उपयोग होने वाला एक अकेला अंक। जैसे Decimal में 0 से 9 तक हर एक अंक एक Digit है।
- Base (आधार): किसी Number System में कुल कितने Digits उपलब्ध हैं, यह संख्या Base कहलाती है। जैसे Decimal का Base 10 है क्योंकि उसमें 10 अलग-अलग Digits (0-9) होते हैं।
- Radix: यह Base का ही दूसरा नाम है। Base और Radix दोनों शब्द एक ही अर्थ में उपयोग होते हैं।
Featured Point: Number System वह प्रणाली है जिसके द्वारा संख्याओं को लिखा, पढ़ा तथा प्रदर्शित किया जाता है। प्रत्येक Number System का एक Base (Radix) होता है जो उसमें प्रयुक्त अंकों की संख्या निर्धारित करता है।
कंप्यूटर में कितने नंबर सिस्टम होते हैं?
कंप्यूटर में मुख्यतः 4 प्रकार के नंबर सिस्टम उपयोग होते हैं:
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 Positional Value (Place Value) कैसे काम करती है?
जिस तरह Decimal में हर Position की एक Value होती है (Ones, Tens, Hundreds), उसी तरह Binary में भी हर Position की Value 2 की घात (Power of 2) होती है। दाईं ओर से बाईं ओर चलने पर Value दोगुनी होती जाती है:
Position → 2⁵ 2⁴ 2³ 2² 2¹ 2⁰ Value → 32 16 8 4 2 1
उदाहरण के लिए, Binary संख्या 101101 में हर Position की Value इस प्रकार होगी:
1 0 1 1 0 1 32 16 8 4 2 1 ────────────────────────────── 32+0+8+4+0+1 = 45 (Decimal)
उदाहरण
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 किया जाता है:
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 किया जाता है:
नंबर सिस्टम Conversion — Step by Step
यह परीक्षा का सबसे महत्वपूर्ण भाग है। आइए हर Conversion को उदाहरण सहित समझें। पहले एक Quick Summary Table देख लेते हैं, ताकि आपको पूरा Process याद रखने में आसानी हो:
| Conversion Type | Method |
|---|---|
| किसी भी Base से Decimal | हर Digit को उसकी Positional Value (Base की घात) से गुणा करके जोड़ें |
| Decimal से Binary | लगातार 2 से भाग दें, Remainder नीचे से ऊपर लिखें |
| Decimal से Octal | लगातार 8 से भाग दें, Remainder नीचे से ऊपर लिखें |
| Decimal से Hexadecimal | लगातार 16 से भाग दें, Remainder नीचे से ऊपर लिखें |
| Binary से Octal | दाईं ओर से 3-3 Bits के Group बनाएं |
| Binary से Hexadecimal | दाईं ओर से 4-4 Bits के Group बनाएं |
| Octal/Hex से Binary | हर Digit को उसके 3-bit/4-bit Binary Code से बदलें |
A. Decimal से Binary Conversion
नियम: जिस भी संख्या को Decimal से Binary में बदलना हो, उसे 2 से लगातार भाग देते रहें और प्रत्येक चरण में शेषफल (Remainder) को दाईं ओर नोट करते जाएँ। यह प्रक्रिया तब तक करें, जब तक भागफल (Quotient) 0 न हो जाए। अंत में Remainders को नीचे से ऊपर लिखें, यही दिए गए नंबर का बाइनरी है।
उदाहरण: (13)₁₀ को Binary में बदलें
B. Binary से Decimal Conversion
नियम: जिस भी संख्या को Binary से Decimal में बदलना हो, उसे दाईं ओर से 2 की घात 0, 1, 2, 3... से गुणा करते हुए आगे बढ़ें और सभी प्राप्त मानों को आपस में जोड़ दें। प्राप्त योग ही दी गई संख्या का Decimal रूप होता है।
उदाहरण: (1101)₂ को Decimal में बदलें
Exam Tip: गिनती हमेशा दाईं ओर (Right Side) से शुरू होती है और घात 0 से शुरू होकर बढ़ती है।
C. Decimal से Octal Conversion
नियम: जिस भी संख्या को Decimal से Octal में बदलना हो, उसे 8 से लगातार भाग देते रहें और प्रत्येक चरण में शेषफल (Remainder) को नोट करते जाएँ। यह प्रक्रिया तब तक करें जब तक भागफल (Quotient) 0 न हो जाए। अंत में Remainders को नीचे से ऊपर लिखें — यही उस संख्या का Octal रूप है।
उदाहरण: (65)₁₀ को Octal में बदलें
D. Octal से Decimal Conversion
नियम: जिस भी संख्या को Octal से Decimal में बदलना हो, उसे दाईं ओर से 8 की घात 0, 1, 2, 3... से गुणा करते हुए आगे बढ़ते हैं और सभी प्राप्त मानों को आपस में जोड़ देंते है। प्राप्त योग ही दी गई संख्या का Decimal रूप होता है।
उदाहरण: (175)₈ को Decimal में बदलें
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 में बदलें
F. Hexadecimal से Decimal Conversion
नियम: जिस भी संख्या को Hexadecimal से Decimal में बदलना हो, उसे दाईं ओर से 16 की घात 0, 1, 2, 3... (16⁰, 16¹, 16², 16³...) से गुणा करते हुए आगे बढ़ते हैं और सभी प्राप्त मानों को आपस में जोड़ देते हैं। प्राप्त योग ही दी गई संख्या का Decimal रूप होता है।
याद रखें: गुणा करते समय A की जगह 10, B की जगह 11... और F की जगह 15 का मान रखकर गुणा किया जाता है।
उदाहरण: (1AF)₁₆ को decimal में बदलें
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 में बदलें
विशेष नोट: ध्यान रखें कि 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 में बदलें
विशेष नोट: ध्यान रखें कि Binary से Hexadecimal में भाग (Division) या गुणा (Multiplication) विधि द्वारा सीधे (Direct) परिवर्तन नहीं किया जाता है। यदि आप भाग या गुणा विधि का उपयोग करना चाहते हैं, तो आपको दो चरणों में कार्य करना होगा — पहले Binary संख्या को Decimal में बदलें, फिर प्राप्त Decimal संख्या को 16 से भाग देकर Hexadecimal में बदलें।
I. Octal से Binary Conversion (Direct Method)
नियम: Octal के हर एक Digit को सीधे उसके बराबर 3-bit Binary Code से बदल दें। यह Binary से Octal का बिल्कुल उल्टा (Reverse) Process है।
उदाहरण: (356)₈ को Binary में बदलें
3 = 011 5 = 101 6 = 110 ────────────────── उत्तर = 011101110 → 11101110
J. Hexadecimal से Binary Conversion (Direct Method)
नियम: Hexadecimal के हर एक Digit को सीधे उसके बराबर 4-bit Binary Code से बदल दें।
उदाहरण: (2C)₁₆ को Binary में बदलें
2 = 0010 C = 1100 ────────────────── उत्तर = 00101100 → 101100
K. Octal से Hexadecimal Conversion
नियम: Octal से Hexadecimal में सीधे (Direct) Conversion का कोई शॉर्टकट नहीं है। इसे हमेशा दो चरणों में किया जाता है — पहले Octal को Binary में बदलें, फिर उस Binary को 4-4 Bits के Group में बाँटकर Hexadecimal में बदल दें।
उदाहरण: (17)₈ को Hexadecimal में बदलें
Step 1 (Octal → Binary): 1 = 001, 7 = 111 → 001111 Step 2 (Binary → Hex): 0000 1111 = 0F उत्तर = F
L. Hexadecimal से Octal Conversion
नियम: इसी तरह Hexadecimal से Octal में भी सीधे Conversion नहीं होता। पहले Hexadecimal को Binary में बदलें, फिर उस Binary को 3-3 Bits के Group में बाँटकर Octal में बदल दें।
उदाहरण: (2F)₁₆ को Octal में बदलें
Step 1 (Hex → Binary): 2 = 0010, F = 1111 → 00101111 Step 2 (Binary → Octal): 000 101 111 → 057 उत्तर = 57
सभी नंबर सिस्टम की तुलना (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
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
4. Binary Division (भाग)
Binary Division भी Decimal Division जैसे ही होता है, बस इसमें केवल 0 और 1 का ही उपयोग होता है।
उदाहरण: 1010 ÷ 10 (यानी 10 ÷ 2)
1010 ÷ 10 = 101 सत्यापन: 101 × 10 = 1010 ✔
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 किया जाता है।
Signed Numbers और Negative Representation
कंप्यूटर में केवल 0 और 1 होते हैं, तो Negative Number कैसे दिखाया जाता है? इसके लिए Signed Binary Numbers में सबसे बाईं ओर का Bit (MSB — Most Significant Bit) को Sign Bit के रूप में उपयोग किया जाता है:
- यदि Sign Bit = 0, तो संख्या Positive होती है
- यदि Sign Bit = 1, तो संख्या Negative होती है
Negative संख्या को Store करने के लिए उसका 2's Complement निकाला जाता है। उदाहरण के लिए, -5 को 8-bit में इस प्रकार दिखाया जाएगा:
+5 = 00000101 5 का 2's Complement (यानी -5) = 11111011
Overflow क्या होता है?
परिभाषा: जब किसी Binary Addition या Subtraction का परिणाम, उपलब्ध Bits की सीमा (Range) से बाहर चला जाए, तो इसे Overflow कहा जाता है। उदाहरण के लिए, यदि हम 8-bit Signed Numbers में दो बड़ी Positive संख्याओं को जोड़ें और परिणाम उस Range में fit न हो, तो Overflow Error आ जाता है।
Exam Point: Overflow तभी होता है जब दो समान Sign (दोनों Positive या दोनों Negative) की संख्याओं को जोड़ने पर Result का Sign बदल जाए।
Computer Character Coding System (कैरेक्टर कोडिंग सिस्टम)
जिस प्रकार कंप्यूटर गणितीय गणनाओं के लिए Number System का उपयोग करता है, उसी प्रकार कंप्यूटर टेक्स्ट, अक्षरों (Letters), और चिन्हों (Symbols) को समझने के लिए Character Coding System का उपयोग करता है। सरल शब्दों में कहें तो, जब आप कीबोर्ड पर कोई बटन (जैसे 'A' या '#') दबाते हैं, तो कंप्यूटर उसे एक निश्चित नंबर कोड में बदल देता है।
कंप्यूटर में मुख्य रूप से तीन Character Coding Systems का उपयोग किया जाता है — ASCII, EBCDIC और Unicode।
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 Table (कुछ महत्वपूर्ण उदाहरण):
| Character | ASCII Value (Decimal) |
|---|---|
| A | 65 |
| B | 66 |
| C | 67 |
| Z | 90 |
| a | 97 |
| z | 122 |
| 0 | 48 |
| 1 | 49 |
| 9 | 57 |
| Space | 32 |
Exam Tip: Capital Letters (A-Z) की ASCII Value हमेशा Small Letters (a-z) से कम होती है — यानी A (65) से z (122) तक क्रम में बढ़ती है।
2. EBCDIC (Extended Binary Coded Decimal Interchange Code)
परिभाषा: EBCDIC एक Character Coding System है जिसे IBM Company ने 1960 के दशक में अपने Mainframe Computers के लिए विकसित किया था। यह ASCII से पुराना और अलग Coding System है, जो आज भी कुछ IBM Mainframe Systems में उपयोग होता है।
मुख्य बिंदु:
- यह एक 8-bit Coding System है, जिसमें कुल 256 (2⁸) अलग-अलग Characters को Represent किया जा सकता है।
- यह मुख्य रूप से IBM Mainframe Computers और Servers में उपयोग होता है।
- EBCDIC में Characters का क्रम (Order) ASCII जैसा नहीं होता, इसलिए ASCII और EBCDIC आपस में Directly Compatible नहीं हैं।
- आज के अधिकतर Personal Computers और Internet Systems में ASCII/Unicode का ही उपयोग होता है, EBCDIC का उपयोग बहुत सीमित (Limited) है।
याद रखने की Trick: EBCDIC का पूरा नाम है — Extended Binary Coded Decimal Interchange Code। यह याद रखें कि यह IBM से जुड़ा है और Mainframe Computers में उपयोग होता है।
3. 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 होता है।
UTF-8, UTF-16 और UTF-32 की तुलना:
| Format | प्रति Character Size | मुख्य उपयोग |
|---|---|---|
| UTF-8 | 1 से 4 Bytes (Variable) | Websites, Internet, ज़्यादातर Software |
| UTF-16 | 2 या 4 Bytes | Windows OS, Java Programming |
| UTF-32 | हमेशा 4 Bytes (Fixed) | कुछ विशेष Internal Processing System |
ASCII vs EBCDIC vs Unicode — तुलना
| विशेषता | ASCII | EBCDIC | Unicode |
|---|---|---|---|
| Full Form | American Standard Code for Information Interchange | Extended Binary Coded Decimal Interchange Code | Universal Coded Character Set |
| विकसित किया | ANSI (American Standards Body) | IBM | Unicode Consortium |
| बिट्स | 7-bit (128) / 8-bit (256) | 8-bit (256) | 8 से 32 bits तक |
| Characters | 128 या 256 | 256 | 1,40,000 से अधिक |
| भाषा समर्थन | केवल English | केवल English (सीमित) | दुनिया की सभी भाषाएँ |
| उपयोग | पुराने Systems, PC | IBM Mainframe Computers | आधुनिक Computers/Internet |
विशेष नोट: आसान शब्दों में समझें तो, ASCII कंप्यूटर को केवल अंग्रेजी भाषा सिखाता है, EBCDIC मुख्यतः IBM के पुराने Mainframe Systems की भाषा है, जबकि Unicode कंप्यूटर को दुनिया की सभी भाषाएँ (हमारी मातृभाषा हिंदी सहित) और आधुनिक इमोजी (😊, 👍) पढ़ना और लिखना सिखाता है। इसीलिए आज के आधुनिक कंप्यूटरों और इंटरनेट पर Unicode (विशेषकर UTF-8) का ही सबसे ज्यादा उपयोग किया जाता है।
Character Coding System का संक्षिप्त इतिहास (Timeline)
Character Coding System समय के साथ कैसे विकसित हुआ, इसे एक Timeline के रूप में समझते हैं:
| वर्ष | घटना |
|---|---|
| 1940 के दशक | पहले Digital Computers में Binary Number System का उपयोग शुरू हुआ |
| 1963 | ASCII Coding System को पहली बार Standardize किया गया |
| 1960-70 का दशक | IBM ने अपने Mainframe Computers के लिए EBCDIC विकसित किया |
| 1991 | Unicode Standard की पहली Version जारी हुई |
| आज | UTF-8, दुनिया भर की Websites और Software में सबसे ज़्यादा उपयोग होने वाला Encoding Format बन चुका है |
📌 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 के लिए है, EBCDIC IBM Mainframe के लिए है, जबकि Unicode सभी भाषाओं के लिए है
- Binary Conversion में हमेशा नीचे से ऊपर पढ़ें
- Octal से Hex और Hex से Octal में सीधा Conversion नहीं होता — पहले Binary बनाना पड़ता है
Students अक्सर जो गलतियाँ करते हैं (Common Mistakes)
Exam में Number System के प्रश्न गलत होने के पीछे अक्सर कुछ Common Mistakes ज़िम्मेदार होती हैं। इन्हें ध्यान से समझें ताकि आप इन्हें दोबारा न दोहराएँ:
- Conversion करते समय Base लिखना भूल जाना, जिससे उत्तर अधूरा माना जाता है
- Positional Value की Power (घात) को Left Side से गिनना शुरू कर देना, जबकि गिनती हमेशा Right Side (0 से) से होनी चाहिए
- Binary को Octal या Hex में बदलते समय Groups गलत बना देना (जैसे 3 की जगह 4 Bits का Group बना लेना)
- Hexadecimal में A=10 से F=15 तक के मान भूल जाना
- Octal से Hex (या Hex से Octal) को Direct Convert करने की कोशिश करना, जबकि इसमें पहले Binary बनाना ज़रूरी है
- 2's Complement निकालते समय 1's Complement के बाद 1 जोड़ना भूल जाना
Practice Questions (अभ्यास प्रश्न)
नीचे दिए गए Conversion खुद हल करके देखें — यह आपकी तैयारी जांचने का सबसे अच्छा तरीका है:
- (27)₁₀ को Binary में बदलें
- (111101)₂ को Decimal में बदलें
- (456)₈ को Decimal में बदलें
- (3A)₁₆ को Decimal में बदलें
- (1100101)₂ को Hexadecimal में बदलें
- Capital Letter 'M' का ASCII Value ज्ञात करें
Tip: उत्तर निकालने के बाद ऊपर दी गई Conversion Methods से मिलान (Verify) ज़रूर करें।