मशीन से मिलें · 30 में पाठ 1 · लगभग 5 मिनट
आपका पहला इमोजी प्रोग्राम
CPU में संख्या डालें, उसे छापें और रुकें।
01 / समझाएँ
विचार समझें
प्रोग्राम निर्देशों की क्रमबद्ध सूची है। हमारा CPU प्रोग्राम काउंटर (PC) वाले निर्देश को पढ़ता है, उसे चलाता है और आम तौर पर अगले निर्देश पर जाता है। संपादक स्रोत की पंक्तियाँ दिखाता है; PC संकलित निर्देशों को शून्य से गिनता है। टिप्पणियाँ और खाली पंक्तियाँ नहीं गिनी जातीं।
📥 LOAD रजिस्टर R0 में संख्या रखता है। 🖨️ PRINT R0 को आउटपुट में भेजता है। ⏹️ HALT निष्पादन रोकता है। इमोजी और अंग्रेज़ी के छोटे निर्देश नाम एक ही मशीन निर्देश लिखने के दो तरीके हैं।
02 / आज़माएँ
होते हुए देखें
तीन कदम चलाएँ। PC को 0 → 1 → 2, R0 को 42 और एक आउटपुट बनते देखें। HALT पर PC उसी निर्देश पर रहता है।
📥 42
🖨️
⏹️एक समय में एक निर्देश के लिए एक कदम लें। उदाहरण बदलकर फिर चला सकते हैं।
03 / चुनौती
इसे काम करने दें
ऐसा प्रोग्राम लिखें जो ठीक एक बार 42 छापे और रुके। LOAD, PRINT और HALT का उपयोग करें।
जाँचक संपादक के वर्तमान प्रोग्राम को हर 1 मामले के लिए नई मशीन में चलाता है। वह इनपुट और मेमोरी खुद देता है; प्रयोगशाला का वर्तमान आउटपुट और मेमोरी परिणाम तय नहीं करते।
#
HALTसंकेत चाहिए?
PRINT R0 पढ़ता है; पहले मान वहाँ रखें।
हल किया समाधान दिखाएँ
प्रोग्राम पढ़ें, हर निर्देश का असर अनुमान करें, फिर प्रयोगशाला में एक-एक कदम चलाएँ।
LOAD 42
PRINT
HALTइमोजी CPU प्रयोगशाला
इमोजी प्रोग्राम
LOAD, ADD या दूसरा निर्देश नाम लिखकर Space दबाएँ ताकि इमोजी जुड़े। Ctrl/⌘ + Enter चलाता/रोकता है; Escape रोकता है; Ctrl/⌘ + ] इंडेंट करता है। Tab फोकस बदलता है। लेबल कोलन लेते हैं। जंप शून्य-आधारित निर्देश पते लेते हैं।
निर्देश मानचित्र और ब्रेकपॉइंट (0)
ब्रेकपॉइंट निर्देश से पहले रोकते हैं। चलाएँ रुके ब्रेकपॉइंट के पार एक बार बढ़ता है; एक कदम सीधे निर्देश चलाता है। स्रोत बदलने से पुराने ब्रेकपॉइंट और मशीन स्थिति साफ़ होते हैं।
CPU रजिस्टर
- R0
- 0
- R1
- 0
- R2
- 0
- R3
- 0
- R4
- 0
- R5
- 0
- R6
- 0
- R7
- 0
स्टैक और लूप फ़्रेम
SP = 255 − डेटा गहराई − कॉल गहराई। स्टैक मेमोरी से अलग है।
डेटा स्टैक (नीचे → ऊपर)
खाली
कॉल वापसी पते (नीचे → ऊपर)
खाली
लूप फ़्रेम
खाली
आउटपुट और इनपुट
आउटपुट देखने के लिए PRINT चलाएँ।
कतार का इनपुट: खाली
मेमोरी · 256 बाइट · 0 गैर-शून्य
हर खाना पता:मान दिखाता है। R = इस कदम में पढ़ा; W = इस कदम में लिखा। जाँचने या निष्पादन से पहले मान रखने के लिए खाना चुनें। तीर कुंजियों से चलें, पंक्ति के लिए Home/End और पूरी मेमोरी के लिए Ctrl/⌘ + Home/End लें।
निष्पादन रिकॉर्ड · 0 प्रविष्टियाँ
हाल की प्रविष्टियाँ नीचे हैं। अलग पूर्ण पहले/बाद की स्थिति के लिए कोई भी शून्य-आधारित क्रमांक जाँचें।
अपनी चुनौती जाँचें
जब चाहें जाँच सकते हैं। पूर्णता दर्ज करने के लिए हर मामला पास हो।
प्रगति केवल localStorage लेती है। इस ब्राउज़र में रहती है और सर्वर पर नहीं जाती।