माइक्रो-कोड मशीन कोड से परे अमूर्त का एक और स्तर है। वास्तविक सीपीयू माइक्रोकोड चला रहा है, और एक अनुवाद इंजन मक्खी पर मशीन कोड को माइक्रोकोड में परिवर्तित करता है। यह कई कारणों से किया जाता है, जिसमें तेज, छोटे प्रोसेसर, कम डिबगिंग के साथ एक जटिल प्रोसेसर बनाने में आसान और पीछे की संगतता के लिए शामिल है। उदाहरण के लिए, x86 इंस्ट्रक्शन सेट में कुछ स्ट्रिंग प्रोसेसिंग निर्देश होते हैं जिनका उपयोग शायद ही कभी किया जाता है। हालांकि, पीछे की ओर संगत बने रहने के लिए, उन्हें अभी भी आधुनिक x86 प्रोसेसर में उपलब्ध होना चाहिए। इन निर्देशों के लिए निष्पादन पथ को हार्डवेअर करने के बजाय, उन्हें माइक्रोकोड में बदल दिया जाता है और निष्पादित किया जाता है। यह सिलिकॉन बचाता है, जबकि अभी भी पीछे की ओर संगत है।
निष्पादित होने के दौरान दोनों प्रकार के कार्यक्रम कहां रहते हैं?
मशीन कोड कैश में रहता है (रैम से खींचने के बाद)। माइक्रो कोड एक माइक्रो कोड कैश में रहता है, जो विशेष मशीन वास्तुकला पर निर्भर करता है। कैश केवल इतना बड़ा हो सकता है कि वह सबसे बड़ा संभव मशीन कोड निर्देश से परिवर्तित माइक्रोकोड को धारण करने के लिए पर्याप्त माइक्रोकोड धारण कर सके, या यह एक बड़ा कैश हो सकता है जो कई मशीन कोडों के परिवर्तित परिणामों को संग्रहीत करता है ताकि इसे सभी को वापस लाने की आवश्यकता न हो। छोटे छोरों के लिए प्रत्येक पुनरावृत्ति पर मशीन कोड।
कुछ आर्किटेक्चर में परिवर्तित माइक्रोकोड को कहीं भी संग्रहीत नहीं किया जाता है - वर्तमान में निष्पादित मशीन कोड के आधार पर भ्रूण / अनुवाद इकाई केवल माइक्रोकोड निर्देशों की एक श्रृंखला को बाहर निकालती है। इस मामले में माइक्रोकोड किसी प्रकार की एक ROM से निष्पादित हो रहा है, और मशीन कोड अनिवार्य रूप से ROM में एक सूचकांक है - माइक्रोकोड निर्देशों की श्रृंखला को इंगित करता है जिसे मशीन कोड निर्देश को पूरी तरह से निष्पादित करने के लिए चलाया जाना चाहिए।
क्या या तो 1: 1 से विधानसभा भाषा के लिए मैपिंग सही-ऑप निर्देश है?
मशीन कोड और असेंबली कोड, आम तौर पर विधानसभा निर्देशों के लिए 1: 1 मैप किया जाता है। यह कोडांतरक पर निर्भर करता है। उच्च स्तर के असेंबलरों में मैक्रोज़ का एक बड़ा सेट हो सकता है जो एक को विधानसभा कोड की एक पंक्ति लिखने की अनुमति देता है और कोडांतरक कई मशीन कोड का उत्पादन करेगा।
लेकिन सामान्य रूप से "शुद्ध" विधानसभा भाषा को प्रोसेसर के मैनुअल में निर्देश सेट तालिका का उपयोग करके सीधे मशीन कोड में परिवर्तित किया जा सकता है।
मुझे यकीन नहीं है कि "सही-सलामत निर्देशों" से आपका क्या मतलब है। शायद आप संदर्भ की व्याख्या कर सकते हैं।
या तो प्रोसेसर आर्किटेक्चर द्वारा परिभाषित किया गया है?
प्रोसेसर आर्किटेक्चर द्वारा मशीन कोड और माइक्रोकोड दोनों के प्रारूप को परिभाषित किया गया है।