2012-02-02 8 views
7

मैं वर्तमान में एक कंप्यूटर संगठन और असेंबली भाषा पाठ्यक्रम ले रहा हूं जो मुख्य रूप से असेंबली भाषा सिखाने के लिए एमआईपीएस निर्देश सेट का उपयोग करता है।एमआईपीएस निर्देश सेट मूल्यों को संग्रहीत करने के लिए जोड़/addi 0 बनाम सेट करें?

मैंने देखा है कि उदाहरण है कि प्रोफेसर ऑनलाइन उपयोग पोस्ट किया गया है जोड़ सकते हैं या addi निम्नलिखित की तरह प्रिंट सेवाएं फोन करने के लिए $ a0 तर्क रजिस्टर में एक मूल्य के ले जाने के लिए के कई ...

# store the first integer in $a0 and print 
add $a0, $zero, $t0 
li $v0, 1 
syscall 

या। ..

# store the first integer in $a0 and print 
addi $a0, $t0, 0 
li $v0, 1 
syscall 

मैं भी ऑनलाइन कुछ उदाहरण देखा है जहाँ दूसरों को सिर्फ इस कदम अनुदेश का उपयोग निम्नलिखित ...

की तरह एक ही बात को पूरा करने के 0

इस परिदृश्य में आसानी से उपयोग किए जाने वाले अतिरिक्त या एडीआई निर्देश का उपयोग कर रहा है? यदि हां तो क्यों? क्या कोई प्रदर्शन अंतर है या क्या यह सिर्फ स्वाद का मामला है?

उत्तर

9

move अनुदेश कोई वास्तविक अनुदेश नहीं है - यह एक छद्म अनुदेश कि कोडांतरक द्वारा एक add अनुदेश में अनुवादित किया गया है।

इन छद्म निर्देशों का एक पूरा समूह है, उदाहरण के लिए देखें। https://en.wikipedia.org/wiki/MIPS_architecture#Pseudo_instructions

इस प्रकार की चीज आरआईएससी प्रोसेसर पर बहुत आम है, जहां आप एक न्यूनतम निर्देश सेट चाहते हैं, और एक से अधिक उद्देश्य के लिए एक विशेष निर्देश का उपयोग किया जा सकता है।

+0

स्पष्टीकरण पॉल के लिए धन्यवाद। मुझे एहसास नहीं हुआ कि चाल सिर्फ एक छद्म निर्देश था। –

संबंधित मुद्दे