16. फैक्टोरियल और लूप की अपरिवर्तनीय शर्त
गुणन संचायक का उपयोग करें और समझाएँ कि 0! क्यों 1 है।
यह पाठ खोलें →
1. अनुमान और निष्पादन क्रम
प्रयोग प्रोग्राम चलाने से पहले आउटपुट अनुमान करें और पहले तीन चलाए निर्देशों का क्रम लिखें। आवश्यक रजिस्टर, फ्लैग या मेमोरी दर्ज करें। फिर एक-एक कदम चलाकर मिलाएँ।
LOAD 4 R1
LOAD 1 R2
LOOP 4
LOAD R2
MUL R1
COPY R0 R2
LOAD R1
SUB 1
COPY R0 R1
RETURN
LOAD R2
PRINT
HALT
इनपुट कतार में रखें: कोई नहीं
मेमोरी शुरू करें: शुरू में सभी बाइट शून्य
प्रयोग अनुमान कुंजी
आउटपुट: 24
2. बनाएँ और जाँचें
0 से 6 तक N पढ़ें और N! छापें। लूप और गुणन संचायक उपयोग करें।
ज़रूरी निर्देश प्रकार: INPUT, LOOP, MUL
चुनौती समाधान उदाहरण
INPUT
COPY R0 R1
COPY R0 R3
LOAD 1 R2
LOOP R3
LOAD R2
MUL R1
COPY R0 R2
LOAD R1
SUB 1
COPY R0 R1
RETURN
LOAD R2
PRINT
HALT
वास्तविक जाँच मामले
मामला 1
- इनपुट
0- शुरुआती मेमोरी
शुरू में सभी बाइट शून्य- अपेक्षित आउटपुट
1
मामला 2
- इनपुट
4- शुरुआती मेमोरी
शुरू में सभी बाइट शून्य- अपेक्षित आउटपुट
24
मामला 3
- इनपुट
6- शुरुआती मेमोरी
शुरू में सभी बाइट शून्य- अपेक्षित आउटपुट
720
3. मशीन समझाएँ
गुणन संचायक 1 से क्यों शुरू होता है?
तर्क और शिक्षण टिप्पणी
1 गुणा का तत्समक है; शून्य चक्कर 0!=1 देते हैं। 0 से शुरू करने पर हर गुणनफल 0 होता।
17. फिबोनाची क्रम
दो पिछले मान रखें और सुरक्षित क्रम में बदलें।
यह पाठ खोलें →
1. अनुमान और निष्पादन क्रम
प्रयोग प्रोग्राम चलाने से पहले आउटपुट अनुमान करें और पहले तीन चलाए निर्देशों का क्रम लिखें। आवश्यक रजिस्टर, फ्लैग या मेमोरी दर्ज करें। फिर एक-एक कदम चलाकर मिलाएँ।
LOAD 1 R1
LOAD 1 R2
LOOP 8
LOAD R1
PRINT
ADD R2
COPY R2 R1
COPY R0 R2
RETURN
HALT
इनपुट कतार में रखें: कोई नहीं
मेमोरी शुरू करें: शुरू में सभी बाइट शून्य
प्रयोग अनुमान कुंजी
आउटपुट: 1, 1, 2, 3, 5, 8, 13, 21
2. बनाएँ और जाँचें
0 से 8 तक N पढ़ें। 1, 1 से शुरू होकर पहले N फिबोनाची मान छापें। N = 0 पर कुछ न छापें।
ज़रूरी निर्देश प्रकार: INPUT, LOOP, ADD, COPY
चुनौती समाधान उदाहरण
INPUT
COPY R0 R4
LOAD 1 R1
LOAD 1 R2
LOOP R4
LOAD R1
PRINT
ADD R2
COPY R2 R1
COPY R0 R2
RETURN
HALT
वास्तविक जाँच मामले
मामला 1
- इनपुट
0- शुरुआती मेमोरी
शुरू में सभी बाइट शून्य- अपेक्षित आउटपुट
कोई नहीं
मामला 2
- इनपुट
1- शुरुआती मेमोरी
शुरू में सभी बाइट शून्य- अपेक्षित आउटपुट
1
मामला 3
- इनपुट
6- शुरुआती मेमोरी
शुरू में सभी बाइट शून्य- अपेक्षित आउटपुट
1, 1, 2, 3, 5, 8
मामला 4
- इनपुट
8- शुरुआती मेमोरी
शुरू में सभी बाइट शून्य- अपेक्षित आउटपुट
1, 1, 2, 3, 5, 8, 13, 21
3. मशीन समझाएँ
पहला पिछला मान जल्दी बदलने से फिबोनाची क्यों बिगड़ता है?
तर्क और शिक्षण टिप्पणी
अभी ज़रूरी मान खो जाता है; जोड़ी बदलने से पहले अस्थायी/मौजूदा परिणाम लें। सही शुरुआत 1,1 है।
18. मेमोरी बफ़र उलटना
स्रोत और गंतव्य संकेतकों से बफ़र को उलटे क्रम में प्रतिलिपि करें।
यह पाठ खोलें →
1. अनुमान और निष्पादन क्रम
प्रयोग प्रोग्राम चलाने से पहले आउटपुट अनुमान करें और पहले तीन चलाए निर्देशों का क्रम लिखें। आवश्यक रजिस्टर, फ्लैग या मेमोरी दर्ज करें। फिर एक-एक कदम चलाकर मिलाएँ।
STORE 1 0
STORE 2 1
STORE 3 2
STORE 4 3
LOAD 3 R1
LOAD 16 R2
LOOP 4
LOAD [R1]
STORE R2
LOAD R1
SUB 1
COPY R0 R1
LOAD R2
ADD 1
COPY R0 R2
RETURN
HALT
इनपुट कतार में रखें: कोई नहीं
मेमोरी शुरू करें: 0: 1, 1: 2, 2: 3, 3: 4
प्रयोग अनुमान कुंजी
आउटपुट: कोई नहीं
2. बनाएँ और जाँचें
पते 0–3 पर चार बाइट पहले से हैं। मूल मान बदले बिना उन्हें उलटे क्रम में 16–19 पर प्रतिलिपि करें। लूप और रजिस्टर पते लें; आउटपुट आवश्यक नहीं है।
ज़रूरी निर्देश प्रकार: LOOP, LOAD, STORE
चुनौती समाधान उदाहरण
LOAD 3 R1
LOAD 16 R2
LOOP 4
LOAD [R1]
STORE R2
LOAD R1
SUB 1
COPY R0 R1
LOAD R2
ADD 1
COPY R0 R2
RETURN
HALT
वास्तविक जाँच मामले
मामला 1
- इनपुट
कोई नहीं- शुरुआती मेमोरी
0: 1, 1: 2, 2: 3, 3: 4- अपेक्षित आउटपुट
कोई नहीं- अपेक्षित अंतिम मेमोरी
0: 1, 1: 2, 2: 3, 3: 4, 16: 4, 17: 3, 18: 2, 19: 1- ज़रूरी मेमोरी पढ़ाई
0, 1, 2, 3
मामला 2
- इनपुट
कोई नहीं- शुरुआती मेमोरी
0: 8, 1: 0, 2: 255, 3: 2- अपेक्षित आउटपुट
कोई नहीं- अपेक्षित अंतिम मेमोरी
0: 8, 1: 0, 2: 255, 3: 2, 16: 2, 17: 255, 18: 0, 19: 8- ज़रूरी मेमोरी पढ़ाई
0, 1, 2, 3
मामला 3
- इनपुट
कोई नहीं- शुरुआती मेमोरी
0: 7, 1: 7, 2: 9, 3: 9- अपेक्षित आउटपुट
कोई नहीं- अपेक्षित अंतिम मेमोरी
0: 7, 1: 7, 2: 9, 3: 9, 16: 9, 17: 9, 18: 7, 19: 7- ज़रूरी मेमोरी पढ़ाई
0, 1, 2, 3
3. मशीन समझाएँ
क्या यह उसी जगह उलटना है? क्या अपरिवर्तित रहे?
तर्क और शिक्षण टिप्पणी
नहीं; स्रोत 0..3 को गंतव्य 16..19 पर उलटी प्रतिलिपि करता है। स्रोत 1,2,3,4; गंतव्य 4,3,2,1।