मैं एक स्मृति आधार पता $ पर है जो a0 और बंद सेट $ t2 से एक मूल्य लोड करने के लिए चाहते हैं, तो मैं क्यों नहीं कर सकते हैं:MIPS लोड शब्द वाक्य रचना
lw $s2, $a1($t2)
तो क्या है उपरोक्त अभिव्यक्ति के बराबर?
मैं एक स्मृति आधार पता $ पर है जो a0 और बंद सेट $ t2 से एक मूल्य लोड करने के लिए चाहते हैं, तो मैं क्यों नहीं कर सकते हैं:MIPS लोड शब्द वाक्य रचना
lw $s2, $a1($t2)
तो क्या है उपरोक्त अभिव्यक्ति के बराबर?
आप ऐसा नहीं कर सकते क्योंकि ऐसी कोई चीज का समर्थन करने वाले एमआईपीएस निर्देश एन्कोडिंग नहीं है। आप इसके अलावा अपने आप को क्या करने की जरूरत:
add $a2, $a1, $t2
lw $s2, 0($a2)
lw
अनुदेश एन्कोडिंग इस तरह दिखता है:
1000 11ss ssst tttt iiii iiii iiii iiii
कहाँ sssss
स्रोत रजिस्टर नंबर है, ttttt
गंतव्य रजिस्टर नंबर है, और iiiiiiiiiiiiiiii
तत्काल है । उस एन्कोडिंग (और कोई वैकल्पिक निर्देश एन्कोडिंग) में कोई कमरा नहीं है जो मेमोरी एड्रेस उत्पन्न करने के लिए दो रजिस्टरों का उपयोग करता है। विशिष्ट मशीन अनुदेश कि ऊपर के उदाहरण से इनकोडिंग जायेगा है:
1000 1100 1101 0010 0000 0000 0000 0000
के बाद से तत्काल 0
है, $s2
रजिस्टर 18
और $a2
रजिस्टर 6
है।
मुझे मिप्स पसंद है ... इतना आसान – Polaris878
@ पोलारिस 878, आरआईएससी के लिए यय! –