संख्या पद्धति: आधार और स्थानीय मान
हर संख्या पद्धति का एक आधार होता है = कितने अंक इस्तेमाल होते हैं। हर स्थान का मान आधारस्थान है।
| पद्धति | आधार | अंक |
|---|---|---|
| बाइनरी | 2 | 0, 1 |
| ऑक्टल | 8 | 0–7 |
| दशमलव | 10 | 0–9 |
| हेक्साडेसिमल | 16 | 0–9, A(10)–F(15) |
आधार नीचे लिखते हैं: (1011)2, (17)8, (2F)16।
दशमलव से बाइनरी, ऑक्टल और हेक्साडेसिमल
पूर्णांक भाग: नए आधार से बार-बार भाग दें, हर शेष लिखें, भागफल 0 होने पर रुकें और शेष नीचे से ऊपर पढ़ें।
उदाहरण: 25 → बाइनरी: 25÷2 = 12 शेष 1, 12÷2 = 6 शेष 0, 6÷2 = 3 शेष 0, 3÷2 = 1 शेष 1, 1÷2 = 0 शेष 1 → (11001)2।
भिन्न भाग: आधार से गुणा करें, पूर्णांक भाग अगला अंक, बचे भिन्न से दोहराएँ, ऊपर से नीचे पढ़ें। 0.625 × 2 = 1.25 (1), 0.25 × 2 = 0.5 (0), 0.5 × 2 = 1.0 (1) → (0.101)2।
बाइनरी, ऑक्टल, हेक्स से दशमलव
हर अंक को उसके स्थानीय मान से गुणा करके जोड़ें।
(1101)2 = 8 + 4 + 0 + 1 = 13।
(157)8 = 1×64 + 5×8 + 7 = 111।
(2F)16 = 2×16 + 15 = 47।
बिंदु के बाद स्थान आधार−1, आधार−2…: (10.11)2 = 2 + 0.5 + 0.25 = 2.75।
बाइनरी ↔ ऑक्टल ↔ हेक्साडेसिमल
8 = 2³, इसलिए एक ऑक्टल अंक = 3 बिट। 16 = 2⁴, इसलिए एक हेक्स अंक = 4 बिट।
बाइनरी → ऑक्टल/हेक्स: दाएँ से समूह बनाएँ (ज़रूरत हो तो बाएँ 0 जोड़ें)। (11010110)2 → 011 010 110 → (326)8; 1101 0110 → (D6)16।
ऑक्टल/हेक्स → बाइनरी: हर अंक को 3 या 4 बिट में लिखें। (5A)16 = 0101 1010।
ऑक्टल ↔ हेक्स: बाइनरी के रास्ते जाएँ।
कूटन योजनाएँ: ASCII, ISCII और यूनिकोड
कंप्यूटर हर अक्षर को एक संख्या (कोड) के रूप में रखता है। कूटन योजना कोडों की तय सारणी है।
- ASCII: 7 बिट, 128 अक्षर (अंग्रेज़ी अक्षर, अंक, चिह्न)। A = 65, a = 97, 0 = 48, स्पेस = 32।
- ISCII: 8 बिट, 256 कोड; पहले 128 में ASCII और बाकी में देवनागरी जैसी भारतीय लिपियाँ।
- यूनिकोड: हर लिपि के हर अक्षर का एक अनोखा कोड (जैसे अ के लिए U+0905), चिह्न और इमोजी भी।
- UTF-8: बदलती लंबाई, 1 से 4 बाइट। अंग्रेज़ी 1 बाइट (ASCII जैसा), हिंदी 3 बाइट, इमोजी 4। ज़्यादातर वेब पेज इसी में।
- UTF-32: तय लंबाई, हर अक्षर 4 बाइट। सरल पर ज़्यादा जगह।
बोर्ड परीक्षा पर ध्यान
1–3 अंक के रूपांतरण (हर भाग/गुणा का चरण लिखें), 'यूनिकोड क्यों चाहिए', और UTF-8 बनाम UTF-32।
मुख्य सूत्र और परिभाषाएँ
- मान = Σ अंक × आधार^स्थान
- दशमलव → आधार b: b से भाग, शेष नीचे → ऊपर
- भिन्न → आधार b: b से गुणा, पूर्णांक ऊपर → नीचे
- 1 ऑक्टल अंक = 3 बिट; 1 हेक्स अंक = 4 बिट
- A = 65, a = 97, '0' = 48 (ASCII)
- UTF-8: 1–4 बाइट; UTF-32: 4 बाइट
हल किए गए उदाहरण
1. (45)₁₀ को बाइनरी में बदलें।
45÷2=22 शेष 1; 22÷2=11 शेष 0; 11÷2=5 शेष 1; 5÷2=2 शेष 1; 2÷2=1 शेष 0; 1÷2=0 शेष 1। ऊपर पढ़ें: (101101)₂।
2. (110110)₂ को दशमलव में बदलें।
32 + 16 + 0 + 4 + 2 + 0 = 54।
3. (156)₁₀ को हेक्साडेसिमल में बदलें।
156÷16 = 9 शेष 12 (C); 9÷16 = 0 शेष 9। ऊपर पढ़ें: (9C)₁₆।
4. (725)₈ को बाइनरी और फिर हेक्स में बदलें।
7 = 111, 2 = 010, 5 = 101 → 111010101। दाएँ से 4-4: 0001 1101 0101 → (1D5)₁₆।
5. (0.375)₁₀ को बाइनरी में बदलें।
0.375×2 = 0.75 (0); 0.75×2 = 1.5 (1); 0.5×2 = 1.0 (1)। नीचे पढ़ें: (0.011)₂।
6. (1A.8)₁₆ को दशमलव में बदलें।
1×16 + 10 + 8×16⁻¹ = 16 + 10 + 0.5 = 26.5।
7. 'नमस्ते' (6 यूनिकोड अक्षर) UTF-8 और UTF-32 में कितने बाइट लेगा?
UTF-8 में हर देवनागरी अक्षर 3 बाइट: 6 × 3 = 18 बाइट। UTF-32 में 6 × 4 = 24 बाइट।
आम गलतियाँ
- शेष ऊपर से नीचे पढ़ना। पूर्णांक के लिए नीचे से ऊपर पढ़ें।
- बिट के समूह बाएँ से बनाना। पूर्णांक भाग में हमेशा दाएँ से बनाएँ।
- हेक्स में 9 से बड़े अंक को 12 लिखना, C की जगह।
- यह सोचना कि ASCII हिंदी रख सकता है। ASCII में केवल 128 अक्षर हैं; हिंदी के लिए ISCII या यूनिकोड चाहिए।