बाइनरी से ऑक्टल कन्वर्टर क्या है?
यह टूल बाइनरी (बेस 2, जिसमें सिर्फ़ 0 और 1 अंकों का उपयोग होता है) में लिखी संख्या को ऑक्टल (बेस 8, जिसमें 0 से 7 तक के अंक होते हैं) में बदल देता है। ऑक्टल, बाइनरी को संक्षिप्त रूप में दिखाने का एक आसान तरीका है, क्योंकि हर तीन बाइनरी अंक मिलकर ठीक एक ऑक्टल अंक बनाते हैं। यह कन्वर्टर इसके बराबर का दशमलव (बेस 10) मान भी बताता है, ताकि आप अपने परिणाम की दोबारा जाँच कर सकें।
इसका उपयोग कैसे करें
इनपुट बॉक्स में कोई बाइनरी संख्या जैसे 101110 टाइप करें और सबमिट करें। कैलकुलेटर पहले जाँचता है कि हर अंक 0 या 1 ही है, फिर ऑक्टल मान, मूल बाइनरी संख्या और इसके बराबर का दशमलव मान दिखा देता है। शुरुआती शून्य (leading zeros) को यह अपने आप संभाल लेता है।
फ़ॉर्मूला समझें
चूँकि \(2^3 = 8\) होता है, इसलिए तीन बाइनरी अंक मिलकर एक ऑक्टल अंक बनाते हैं। दाईं ओर से शुरू करते हुए बाइनरी संख्या को तीन-तीन बिट के समूहों में बाँट लें, और ज़रूरत पड़ने पर सबसे बाईं ओर के समूह में शून्य जोड़ दें। हर समूह को इस सूत्र से बदलें:
$$d = 4 \cdot b_2 + 2 \cdot b_1 + b_0$$जिससे 0 से 7 के बीच का एक मान मिलता है। इन सभी अंकों को जोड़कर लिखने पर पूरी ऑक्टल संख्या बन जाती है।
$$\text{Octal} = \left( \text{Binary}_2 \right)_{2 \to 8}$$$$\begin{gathered} \text{Octal}_8 = \sum_{i=0}^{k-1} g_i \cdot 8^{\,i} \\[1.5em] \text{where}\quad \left\{ \begin{aligned} \text{Binary} &= b_{n-1}b_{n-2}\cdots b_1 b_0 \;(\text{base }2) \\ g_i &= 4b_{3i+2} + 2b_{3i+1} + b_{3i} \\ k &= \lceil n/3 \rceil \text{ groups of 3 bits} \end{aligned} \right. \end{gathered}$$
हल किया हुआ उदाहरण
मान लीजिए 101110। इसे दाईं ओर से तीन-तीन के समूहों में बाँटें: 101 और 110। पहला समूह है \(4 \cdot 1 + 2 \cdot 0 + 1 \cdot 0 = 5\); दूसरा समूह है \(4 \cdot 1 + 2 \cdot 1 + 1 \cdot 0 = 6\)। तो ऑक्टल परिणाम है 56। जाँच के तौर पर, इसका दशमलव मान है \(32 + 8 + 4 + 2 = 46\)।
बाइनरी-से-ऑक्टल समूह रूपांतरण तालिका
बाइनरी-से-ऑक्टल रूपांतरण काम करता है क्योंकि \(8 = 2^3\)। प्रत्येक ऑक्टल अंक बिल्कुल तीन बाइनरी अंकों (एक त्रिपद) के एक समूह के अनुरूप है। रूपांतरित करने के लिए, बाइनरी संख्या को दाईं ओर से 3 बिट्स के समूहों में विभाजित करें, यदि आवश्यक हो तो सबसे बाईं ओर के समूह को अग्रणी शून्य के साथ पैड करें, फिर प्रत्येक त्रिपद को नीचे दिए गए एकल ऑक्टल अंक से बदलें।
| 3-बिट बाइनरी (त्रिपद) | ऑक्टल अंक | दशमलव मान |
|---|---|---|
| 000 | 0 | 0 |
| 001 | 1 | 1 |
| 010 | 2 | 2 |
| 011 | 3 | 3 |
| 100 | 4 | 4 |
| 101 | 5 | 5 |
| 110 | 6 | 6 |
| 111 | 7 | 7 |
प्रत्येक त्रिपद को स्थान मानों \(4,\ 2,\ 1\) के साथ पढ़ा जाता है (अर्थात्\(2^2, 2^1, 2^0\))। उदाहरण के लिए, \(101_2 = 1\times4 + 0\times2 + 1\times1 = 5\), ऑक्टल अंक \(5\) देता है।
अतिरिक्त हल किए गए उदाहरण
उदाहरण 1: \(11_2\) → ऑक्टल
दाईं ओर से 3-बिट त्रिपद में समूहित करें, बाईं ओर को शून्य के साथ पैड करें: \(11 \to 011\)।
$$011_2 = 0\times4 + 1\times2 + 1\times1 = 3$$
तो \(11_2 = \)3\(_8\)। इसका दशमलव मान भी 3 है।
उदाहरण 2: \(11010110_2\) → ऑक्टल
दाईं ओर से त्रिपद में विभाजित करें; सबसे बाईं ओर के समूह को पैडिंग शून्य मिलता है: \(11\,010\,110 \to 011\,010\,110\)।
| त्रिपद | 011 | 010 | 110 |
|---|---|---|---|
| ऑक्टल अंक | 3 | 2 | 6 |
अंकों को बाईं ओर से दाईं ओर पढ़ने पर \(11010110_2 = \)326\(_8\) मिलता है। दशमलव मान के रूप में यह बाइनरी 214 के बराबर है।
उदाहरण 3: एक लंबी स्ट्रिंग \(101110011001_2\)
यह 12 बिट है, पहले से 3 का गुणज है, इसलिए कोई पैडिंग आवश्यक नहीं है। दाईं ओर से समूहित करें:
| त्रिपद | 101 | 110 | 011 | 001 |
|---|---|---|---|---|
| ऑक्टल अंक | 5 | 6 | 3 | 1 |
इसलिए \(101110011001_2 = \)5631\(_8\)। आधार 10 में सत्यापित समान मान 2969 है।
अक्सर पूछे जाने वाले सवाल
तीन-तीन के समूह में क्यों बाँटते हैं? चूँकि \(8 = 2^3\) होता है, इसलिए हर ऑक्टल अंक ठीक तीन बिट को दर्शाता है, जिससे यह रूपांतरण साफ़-सुथरा और बिना किसी नुकसान वाला होता है।
अगर अंकों की संख्या तीन का गुणज न हो तो? ऐसी स्थिति में हम बाईं ओर शून्य जोड़ देते हैं; इससे संख्या का मान नहीं बदलता।
क्या मैं दशमलव बिंदु (decimal point) डाल सकता हूँ? यह कन्वर्टर सिर्फ़ पूर्णांक बाइनरी संख्याओं को संभालता है। बदलने से पहले किसी भी भिन्नात्मक (fractional) हिस्से को हटा दें।