All Your Base

All Your Base

कठिन

परिचय

आपको अभी-अभी गणित के प्रोफेसर की नौकरी मिली है। आपका पहला सप्ताह अच्छा गुज़रा, लेकिन दूसरे सप्ताह में कुछ गड़बड़ है। समस्या यह है कि आपके विद्यार्थियों द्वारा दिया गया हर उत्तर गलत है! सौभाग्य से, आपके गणित के कौशल से आप यह पहचान पाए कि असली दिक्कत कहाँ है: विद्यार्थियों के उत्तर वास्तव में सही हैं, लेकिन वे सब आधार 2 (बाइनरी) में हैं! हैरानी की बात यह है कि हर सप्ताह विद्यार्थी कोई अलग आधार इस्तेमाल करते हैं। इसके लिए कि आप विद्यार्थियों के उत्तर जल्दी जाँच सकें, आप एक टूल बनाएँगे जो संख्याओं को एक आधार से दूसरे आधार में बदल देता है।

निर्देश

एक आधार में लिखे अंकों के क्रम को, जो एक संख्या दर्शाता है, दूसरे आधार के अंकों के क्रम में बदलिए, जो वही संख्या दर्शाता है।

Note

इस रूपांतरण को खुद लागू करने की कोशिश कीजिए। रूपांतरण करने के लिए किसी और चीज़ का इस्तेमाल न कीजिए।

स्थानीय मान पद्धति के बारे में

स्थानीय मान पद्धति में b आधार वाली किसी संख्या को b की घातों के रैखिक संयोजन के रूप में समझा जा सकता है।

संख्या 42, आधार 10 में, का अर्थ है:

(4 × 10¹) + (2 × 10⁰)

संख्या 101010, आधार 2 में, का अर्थ है:

(1 × 2⁵) + (0 × 2⁴) + (1 × 2³) + (0 × 2²) + (1 × 2¹) + (0 × 2⁰)

संख्या 1120, आधार 3 में, का अर्थ है:

(1 × 3³) + (1 × 3²) + (2 × 3¹) + (0 × 3⁰)

हाँ। ऊपर लिखी ये तीनों संख्याएँ बिल्कुल एक ही हैं। बधाई हो!

रजिस्टर

रजिस्टर उपयोग प्रकार विवरण
$a0 इनपुट पूर्णांक इनपुट अंकों की संख्या
$a1 इनपुट पूर्णांक इनपुट अंकों का आधार
$a2 इनपुट पूर्णांक आउटपुट अंकों का आधार
$a3 इनपुट/आउटपुट पता अंकों वाले शब्दों का ऐसा ऐरे जिसे बदला जा सकता है
$v0 आउटपुट पूर्णांक आउटपुट अंकों की संख्या, इनपुट अमान्य हो तो -1
$t0-9 अस्थायी कोई भी अस्थायी भंडारण के लिए इस्तेमाल किए जाते हैं
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
MIPS Assembly Exercism

All Your Base शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और MIPS Assembly को 70 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।