Nano Banana 2.1 अब LIVE — Google का नवीनतम | आज़माएँ →
साइन इन
WAVESPEED AI RISC-V सिम्युलेटर आपका कोड आपके डिवाइस पर रहता है
100% मुफ़्त

मुफ़्त RISC-V सिम्युलेटरअसेंबली लिखें, चलाएँ, हर रजिस्टर पर नज़र रखें।

लेबल और स्यूडो-इंस्ट्रक्शन के साथ RV32IM असेंबली टाइप करें, फिर उसे पूरी स्पीड पर या एक-एक इंस्ट्रक्शन करके चलाएँ।
ब्रेकपॉइंट लगाएँ, पीछे स्टेप करें, और प्रोग्राम चलते समय रजिस्टर, मेमोरी, मशीन कोड और कंसोल देखें।

RV32I + Mपीछे स्टेप और ब्रेकपॉइंटहेक्स में मशीन कोड
साइन-अप नहीं आपके ब्राउज़र में चलता है कुछ भी इंस्टॉल नहीं

RISC-V सिम्युलेटर लोड हो रहा है…

आपका प्रोग्राम इस ब्राउज़र में सेव है। कॉपी रखने के लिए उसे डाउनलोड करें।
तीन आसान चरण

RISC-V असेंबली ऑनलाइन कैसे चलाएँ

01

प्रोग्राम लिखें या खोलें

किसी उदाहरण से शुरू करें, अपनी असेंबली टाइप करें या कोई .s फ़ाइल खोलें। डेटा .data के नीचे और कोड .text के नीचे रखें।

02

चलाएँ या स्टेप करें

पूरी स्पीड के लिए चलाएँ दबाएँ, या एक इंस्ट्रक्शन चलाकर यह देखने के लिए कि कौन-से रजिस्टर और मेमोरी बदले, स्टेप दबाएँ। ब्रेकपॉइंट लगाने के लिए लाइन नंबर के बगल में क्लिक करें।

03

नतीजे पढ़ें

आउटपुट और इनपुट कंसोल में होते हैं। रजिस्टर और मेमोरी जाँचें, गड़बड़ी कहाँ हुई यह ढूँढने के लिए पीछे स्टेप करें, और मशीन कोड हेक्स के रूप में कॉपी करें।

असेंबली डीबग करने के टिप्स

फिर से शुरू करने की बजाय पीछे स्टेप करें

एक स्टेप ज़्यादा चले गए? पीछे स्टेप आख़िरी इंस्ट्रक्शन को पूर्ववत करता है, रजिस्टर, मेमोरी और आउटपुट समेत, ताकि आप शुरू से चलाए बिना फिर देख सकें।

call से पहले ra सेव करें

call, ra को ओवरराइट करता है। जो फ़ंक्शन दूसरे को कॉल करता है, उसे पहले ra को स्टैक पर सेव करना और ret से पहले वापस लाना होता है, जैसा फ़ैक्टोरियल उदाहरण में है।

रन कॉलम पर नज़र रखें

मशीन कोड टैब गिनता है कि हर इंस्ट्रक्शन कितनी बार चला। एक बार ज़्यादा चला या कभी न चला लूप बॉडी सीधे ग़लत ब्रांच की ओर इशारा करता है।

WaveSpeed AI

कोड से विज़ुअल तक

अपने प्रोसेसर डिज़ाइन का इलस्ट्रेशन या अपने कोर्स के लिए क्लिप चाहिए? WaveSpeed AI से बनाएँ।

  • 1,000+ AI मॉडल
  • इमेज, वीडियो और 3D
  • जितना इस्तेमाल, उतना भुगतान

योग्य नए अकाउंट के लिए $1 के फ़्री क्रेडिट। कार्ड की ज़रूरत नहीं। जनरेटर के लिए अलग अकाउंट और क्रेडिट की ज़रूरत होती है। RISC-V सिम्युलेटर मुफ़्त है।

RISC-V सिम्युलेटर FAQ

क्या यह RISC-V सिम्युलेटर मुफ़्त है?

हाँ। यह ऑनलाइन RISC-V सिम्युलेटर मुफ़्त है — न अकाउंट, न रन की कोई सीमा, न कुछ इंस्टॉल करना।

यह कौन-से इंस्ट्रक्शन सपोर्ट करता है?

32-बिट बेस इंटीजर सेट (RV32I), गुणा, भाग और शेष के लिए M एक्सटेंशन, और cycle, time और instret काउंटर पढ़ना — कंप्यूटर आर्किटेक्चर और असेंबली कोर्स में पढ़ाया जाने वाला मुख्य इंस्ट्रक्शन सेट।

क्या मेरे कोर्स के प्रोग्राम यहाँ चलेंगे?

ज़्यादातर चलेंगे। कोड 0x00400000 से और डेटा 0x10010000 से शुरू होता है, और सिस्टम कॉल वही नंबर इस्तेमाल करते हैं (a7 = 1 इंटीजर प्रिंट, 4 स्ट्रिंग प्रिंट, 5 इंटीजर पढ़ें, 10 exit वगैरह) जो आम शिक्षण सिम्युलेटर करते हैं। संदर्भ टैब में सभी की सूची है।

मैं प्रिंट और इनपुट कैसे पढ़ूँ?

कॉल नंबर a7 में और आर्ग्युमेंट a0 में रखें, फिर ecall चलाएँ। जब प्रोग्राम पढ़ता है, कंसोल इनपुट माँगता है: उसे टाइप करें और Enter दबाएँ। आप प्रोग्राम के माँगने से पहले भी टाइप कर सकते हैं।

साइकिल कैसे गिने जाते हैं?

इंस्ट्रक्शन गिनती सटीक है। साइकिल गिनती एक सरल in-order कोर के लिए अनुमान है: हर इंस्ट्रक्शन 1 साइकिल, हर लोड 2, हर जंप या लिए गए ब्रांच 3, हर गुणा 3 और हर भाग 33।

क्या मुझे मशीन कोड मिल सकता है?

हाँ। मशीन कोड टैब हर इंस्ट्रक्शन का पता, हेक्स वर्ड और डिकोड किया गया रूप दिखाता है। उसे हेक्स के रूप में कॉपी करें, हर लाइन में एक वर्ड, या .hex या रॉ .bin फ़ाइल डाउनलोड करें।

मेरा प्रोग्राम मिसअलाइन्ड एक्सेस पर क्यों रुकता है?

वर्ड 4 के गुणज वाले पतों पर और हाफ़वर्ड 2 के गुणज पर पढ़े और लिखे जाने चाहिए। वर्ड डेटा से पहले .align 2 लगाएँ, या अपना निकाला गया पता जाँचें। एरर पता और लाइन बताता है।

क्या मैं पीछे की ओर स्टेप कर सकता हूँ?

हाँ। पीछे स्टेप आख़िरी 4,096 इंस्ट्रक्शन तक पूर्ववत करता है, रजिस्टर, मेमोरी और आउटपुट समेत, ताकि आप शुरू से चलाए बिना बग ढूँढ सकें।

क्या मेरा कोड अपलोड होता है?

नहीं। असेंबल करना और चलाना आपके ब्राउज़र में होता है, और आपका प्रोग्राम इस ब्राउज़र के स्टोरेज में सेव होता है ताकि अगली बार भी यहीं मिले।

सभी मुफ़्त टूल

अपना अगला RISC-V प्रोग्राम चलाएँ।

मुफ़्त, निजी और जब आप चाहें तब तैयार।

सिम्युलेटर खोलें