निर्देश सेट आर्किटेक्चर की तुलना

अनुदेश समुच्चय आर्किटेक्चर (आईएसए) कंप्यूटर का सार मॉडल है, जिसे कंप्यूटर आर्किटेक्चर भी कहा जाता है। आईएसए की प्राप्ति को कार्यान्वयन कहा जाता है। आईएसए कई कार्यान्वयनों की अनुमति देता है जो कंप्यूटर के प्रदर्शन, भौतिक आकार और मौद्रिक लागत (अन्य बातों के अतिरिक्त) में भिन्न हो सकते हैं; क्योंकि आईएसए सॉफ़्टवेयर और कंप्यूटर हार्डवेयर के बीच इंटरफेस ( कम्प्यूटिंग ) के रूप में कार्य करता है। आईएसए के लिए लिखा गया सॉफ्टवेयर एक ही आईएसए के विभिन्न कार्यान्वयन पर चल सकता है। इसने कंप्यूटर की विभिन्न पीढ़ियों के बीच द्वयाधारी संगतता को आसानी से प्राप्त करने और कंप्यूटर वर्ग के विकास को सक्षम किया है। इन दोनों विकासों ने कंप्यूटरों की लागत कम करने और उनकी प्रयोज्यता बढ़ाने में मदद की है। इन कारणों से, आईएसए आज कंप्यूटिंग में सबसे महत्वपूर्ण अमूर्तताओं में से एक है।

आईएसए वह सब कुछ परिभाषित करता है जो एक मशीन भाषा प्रोग्रामर को कंप्यूटर प्रोग्राम करने के लिए जानना आवश्यक है। आईएसए क्या परिभाषित करता है आईएसए के बीच भिन्न होता है; सामान्य तौर पर, आईएसए समर्थित डेटा प्रकार को परिभाषित करता है, वहां क्या स्थिति है (जैसे कि मुख्य मेमोरी और प्रोसेसर रजिस्टर) और उनके शब्दार्थ (मेमोरी स्थिरता और एड्रेसिंग मोड), अनुदेश समुच्चय (मशीन का सेट निर्देश जिसमें कंप्यूटर की मशीन भाषा सम्मिलित है), और इनपुट/आउटपुट मॉडल सम्मिलित  हैं।

आधार
कंप्यूटिंग के प्रारंभिक दशकों में, ऐसे कंप्यूटर थे जो द्वयाधारी संख्या, दशमलव कंप्यूटर और यहां तक ​​कि टर्नरी कंप्यूटर का उपयोग करते थे। समकालीन कंप्यूटर लगभग अनन्य रूप से द्वयाधारी हैं।

बिट
कंप्यूटर आर्किटेक्चर को अधिकांशतः n-बिट आर्किटेक्चर के रूप में वर्णित किया जाता है। आज n अधिकांशतः 8, 16, 32, या 64 होता है, लेकिन अन्य आकारों का उपयोग किया गया है (6, 12, 18, 24, 30, 36, 39, 48, 60 सहित)। यह वास्तव में सरलीकरण है क्योंकि कंप्यूटर आर्किटेक्चर में अधिकांशतः अनुदेश समुच्चय में कुछ अधिक या कम "प्राकृतिक" डेटा आकार होते हैं, लेकिन इनका हार्डवेयर कार्यान्वयन बहुत भिन्न हो सकता है। कई निर्देश समुच्चय आर्किटेक्चर में निर्देश होते हैं, जो उस निर्देश सेट आर्किटेक्चर के कुछ कार्यान्वयन पर, प्रोसेसर के प्रमुख आंतरिक डेटापथ के आधे और/या दोगुने आकार पर काम करते हैं। इसके उदाहरण Z80, MC68000, और आईबीएम सिस्टम/360 हैं। इस प्रकार के कार्यान्वयन पर, दो बार विस्तृत ऑपरेशन सामान्यतः लगभग दो गुना अधिक क्लॉक साइकिल ( सी पी यू का क्षमता मापक) लेता है (जो उच्च प्रदर्शन कार्यान्वयन पर मामला नहीं है)। उदाहरण के लिए, 68000 पर, इसका मतलब 4 क्लॉक टिक के अतिरिक्त 8 है, और इस विशेष चिप को16-बिट कंप्यूटिंग के साथ 32-बिट आर्किटेक्चर के रूप में वर्णित किया जा सकता है। आईबीएम सिस्टम/360 अनुदेश समुच्चय आर्किटेक्चर 32-बिट है, लेकिन सिस्टम/360 श्रृंखला के कई मॉडल, जैसे आईबीएम सिस्टम/360 मॉडल 30, में छोटे आंतरिक डेटा पथ हैं, जबकि अन्य, जैसे 360/195, में छोटे आंतरिक डेटा पथ हैं। बड़े आंतरिक डेटा पथ आर्किटेक्चर की चौड़ाई निर्धारित करने के लिए बाहरी डेटाबस चौड़ाई का उपयोग नहीं किया जाता है; NS32008, NS32016 और NS32032 मूल रूप से अलग-अलग बाहरी डेटा बसों के साथ समान 32-बिट चिप थे; NS32764 में 64-बिट बस थी, और 32-बिट रजिस्टर का उपयोग किया गया था।प्रारंभिक 32-बिट माइक्रोप्रोसेसरों में अधिकांशतः 24-बिट का एड्रेस होता था, जैसा कि सिस्टम/360 प्रोसेसर में होता था।

संचालन
ऑपरेंड की संख्या उन कारकों में से एक है जो अनुदेश समुच्चय के प्रदर्शन के बारे में संकेत दे सकती है। तीन-ऑपरेंड आर्किटेक्चर (2-इन, 1-आउट) की अनुमति देगा A := B + C निर्देश में गणना की जानी है

दो-ऑपरेंड आर्किटेक्चर (1-इन, 1-इन-एंड-आउट) की अनुमति देगा A := A + B निर्देश में गणना करने के लिए, तीन-ऑपरेंड निर्देश को अनुकरण करने के लिए दो निर्देशों को निष्पादित करने की आवश्यकता होगी। A:= A * C A�:= A + C

एन्कोडिंग लंबाई
जैसा कि नीचे दी गई तालिका में देखा जा सकता है कि कुछ अनुदेश समुच्चय एक बहुत ही सरल निश्चित एन्कोडिंग लंबाई रखते हैं, और अन्य में चर-लंबाई होती है। सामान्यतः यह अल्प निर्देश सेट कंप्यूटर (आरआईएससी) आर्किटेक्चर है जिसमें निश्चित एन्कोडिंग लंबाई होती है और जटिल अनुदेश समुच्चय कंप्यूटर (सीआईएससी) आर्किटेक्चर होते हैं जिनमें परिवर्तनीय लंबाई होती है, लेकिन हमेशा नहीं होती है।

एंडियननेस
आर्किटेक्चर "बड़े" या "छोटे" अंतराल या दोनों का उपयोग कर सकता है, या दोनों का उपयोग करने के लिए समनुरूप करने योग्य हो सकता है। लिटिल-एंडियन प्रोसेसर सबसे कम संख्या वाले मेमोरी लोकेशन में मल्टी-बाइट मान के कम से कम महत्वपूर्ण बाइट के साथ मेमोरी में बाइट्स ऑर्डर करते हैं। बिग-एंडियन आर्किटेक्चर इसके अतिरिक्त बाइट्स को सबसे कम संख्या वाले एड्रेस पर सबसे महत्वपूर्ण बाइट के साथ व्यवस्थित करते हैं। x86 आर्किटेक्चर के साथ-साथ कई 8-बिट आर्किटेक्चर लिट-एंडियन हैं। अधिकांश आरआईएससी आर्किटेक्चर (एसपीएआरसी, पावर, पावरपीसी, एमआईपीएस) मूल रूप से बिग-एंडियन थे (एआरएम छोटे-एंडियन थे), लेकिन कई (एआरएम सहित) अब या तो समनुरूप करने योग्य हैं।

एंडियननेस केवल उन प्रोसेसरों पर लागू होता है जो डेटा की इकाइयों (जैसे बाइट्स) के व्यक्तिगत एड्रेस की अनुमति देते हैं जो मूल एड्रेस योग्य मशीन शब्द से छोटे होते हैं।

अनुदेश समुच्चय
नीचे दी गई तालिका अनुदेश समुच्चय आर्किटेक्चर के बारे में मूलभूत जानकारी की तुलना करती है।

टिप्पणियाँ:
 * सामान्यतः रजिस्टरों की संख्या दो की घात होती है, उदाहरण 8, 16, 32 है। कुछ स्थितियों में आर्किटेक्चर की रजिस्टर फ़ाइल के "हिस्से" के रूप में हार्डवार्ड-टू-जीरो सूडो-रजिस्टर सम्मिलित है, ज्यादातर इंडेक्सिंग मोड को सरल बनाने के लिए है। कॉलम रजिस्टर केवल किसी भी समय सामान्य निर्देशों द्वारा प्रयोग करने योग्य पूर्णांक रजिस्टरों की गणना करता है। आर्किटेक्चर में हमेशा विशेष-उद्देश्य रजिस्टर जैसे प्रोग्राम काउंटर (पीसी) सम्मिलित  होते हैं। जब तक उल्लेख नहीं किया जाता तब तक उनकी गिनती नहीं की जाती है। ध्यान दें कि कुछ आर्किटेक्चर, जैसे स्पार्क, में रजिस्टर विंडो होती हैं; उन आर्किटेक्चर के लिए, गिनती इंगित करती है कि रजिस्टर विंडो में कितने रजिस्टर उपलब्ध हैं। इसके अतिरिक्त, रजिस्टर नाम बदलने के लिए गैर-आर्किटेक्टेड रजिस्टरों की गणना नहीं की जाती है।
 * "टाइप" कॉलम में, "रजिस्टर-रजिस्टर" एक सामान्य प्रकार के आर्किटेक्चर का पर्याय है, "लोड-स्टोर", जिसका अर्थ है कि कोई भी निर्देश सीधे मेमोरी तक नहीं पहुंच सकता है, सिवाय कुछ विशेष के, अर्थात रजिस्टर से लोड या स्टोर करें ), परमाणु संचालन के लिए मेमोरी लॉकिंग निर्देशों के संभावित अपवादों के साथ है।
 * एंडियननेस कॉलम में, Bi का अर्थ है कि एंडियननेस विन्यास योग्य है।

यह भी देखें

 * सेंट्रल प्रोसेसिंग यूनिट (सीपीयू)
 * प्रोसेसर डिजाइन
 * सीपीयू माइक्रोआर्किटेक्चर की तुलना
 * अनुदेश समुच्चय आर्किटेक्चर
 * माइक्रोप्रोसेसर
 * बेंचमार्क (कंप्यूटिंग)