षोडशआधारी से दशमलव: हेक्स मान को अर्थ देना
यह रूपांतरण क्या करता है
यह आधार 16 का मान पढ़कर दशमलव में लिख देता है। षोडशआधारी मशीन के लिए और बिट पैटर्न की तुलना करने वाले किसी भी व्यक्ति के लिए सुविधाजनक है, पर सीमाओं, बाइट आकार और हर उस चीज़ के लिए दशमलव ही चाहिए जिसे इंसान को एक नज़र में परखना हो। यह वह दिशा है जिसकी ओर आप तब हाथ बढ़ाते हैं जब कोई औज़ार मान थमाकर आगे समझाना बंद कर दे।
स्थानीय भार 16 की घातें हैं
दाईं ओर से पढ़ते हुए हर हेक्स अंक 1, 16, 256, 4096 और आगे की घातों से गुणा होता है। 1E90FF का मान 1 × 16 की पाँचवीं घात, जमा 14 × 16 की चौथी घात, और इसी तरह आगे, जो मिलकर 2003199 बनता है। यह वही स्थानीय-भार जोड़ है जो हर आधार में चलता है; सिर्फ़ भार बदलते हैं, इसीलिए वही विधि द्विआधारी और अष्टाधारी पर भी लगती है।
षोडशआधारी से दशमलव रूपांतरण तालिका
डीबगिंग और वेब के काम में बार-बार आने वाले हेक्स मान और उनके दशमलव बराबर। गोल हेक्स संख्याएँ याद रखने लायक हैं, क्योंकि वे बाइट और पेज की सीमाएँ बताती हैं।
| षोडशआधारी | दशमलव |
|---|---|
| 0 | 0 |
| 1 | 1 |
| F | 15 |
| 10 | 16 |
| 7F | 127 |
| A5 | 165 |
| FF | 255 |
| 1000 | 4096 |
| FFFF | 65535 |
| DEADBEEF | 3735928559 |
लोग असल में क्या डिकोड करते हैं
तीन काम बार-बार आते हैं: रंग चैनल पढ़ना, मेमोरी पते को किसी सीमा से मिलाना, और काटे गए हैश को तुलना लायक बनाना। रंग सबसे आसान उदाहरण है: 0x1E90FF टूटकर 30, 144 और 255 बनता है, जिससे पता चलता है कि नीला चैनल भरा हुआ है और लाल कमज़ोर। यही तीन-कदमी पढ़ाई किसी भी पैक किए मान पर लगती है, और बाइट अलग कर लेने पर वह कहीं आसान हो जाती है।
बदलने से पहले मान तोड़िए
छह अंकों का रंग या लंबा पता दो-दो अंकों के समूह में पढ़ना आसान है, क्योंकि हर समूह एक बाइट है। पूरा मान एक साथ बदलना एक जवाब के लिए ठीक है, पर पहले तोड़ने पर ही दिखता है कि कौन-सी बाइट असामान्य है — और आमतौर पर असली सवाल वही होता है।
अक्सर पूछे जाने वाले सवाल
हेक्स को दशमलव में हाथ से कैसे बदलें?
हर अंक को उसके स्थानीय भार — दाईं ओर से 1, 16, 256, 4096 और आगे — से गुणा करें और सब जोड़ दें। याद रखें कि A दस है, B ग्यारह, और F पंद्रह तक। 1E90FF पर यह 1048576 + 917504 + 36864 + 0 + 240 + 15 बनता है, यानी 2003199।
मेमोरी पते लंबे हेक्स नंबर जैसे क्यों दिखते हैं?
क्योंकि वे स्वाभाविक रूप से बाइट और शब्द की सीमाओं पर सीधे बैठते हैं, और हेक्स अंक उन सीमाओं से उस तरह मेल खाते हैं जैसे दशमलव अंक नहीं खाते। दो हेक्स अंक एक बाइट हैं, इसलिए पते के शुरुआती अंक उसका पेज बताते हैं और आख़िरी अंक उस पेज के भीतर उसका ऑफ़सेट।
क्या 0x उपसर्ग के साथ मान चिपका सकता हूँ?
हाँ, उपसर्ग पहचान लिया जाता है और बदलने से पहले हटा दिया जाता है, इसलिए डीबगर या सोर्स फ़ाइल से सीधे कॉपी किया मान बिना संपादन के चल जाता है। इस पेज से मेल न खाने वाला उपसर्ग चुपचाप अनदेखा होने के बजाय बताया जाता है, जिससे ग़लत पढ़ा मान निकल ही नहीं पाता।
हेक्स मान कितना बड़ा हो सकता है?
चौंसठ बिट और उससे भी बहुत आगे। उस दायरे के ऊपरी सिरे के मान उस सीमा को पार कर जाते हैं जहाँ तक आम फ़्लोटिंग-पॉइंट सही रहता है, इसलिए रूपांतरण पूर्णांक गणित में चलता है और हर अंक सही लौटाता है, न कि वह गोल नतीजा जो स्प्रेडशीट देती।
क्या हैश का शुरुआती हिस्सा संख्या के तौर पर अर्थ रखता है?
गणित की दृष्टि से हाँ, व्यवहार में नहीं। हैश के पहले कुछ बाइट दशमलव में बदलकर पैटर्न ढूँढ़ना या तुलना की स्क्रिप्ट लिखना काम का है, पर काटा गया हैश वह गुण खो चुका होता है जो उसे हैश बनाता था, इसलिए दशमलव रूप को अपने आप में कोई पहचान न मानें।