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

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

CISC आर्किटेक्चर का उपयोग तब किया जाता है जब संगतता, व्यापक सॉफ़्टवेयर समर्थन और सामान्य प्रयोजन के कार्यभारों का कुशल निष्पादन महत्वपूर्ण होते हैं। ये अक्सर मुख्यधारा के कंप्यूटिंग प्लेटफॉर्म में पाए जाते हैं जहाँ एक परिपक्व पारिस्थितिकी तंत्र और दीर्घकालिक ISA स्थिरता प्रमुख लाभ होते हैं। इसके सबसे सामान्य उपयोगों में शामिल हैं:
- सामान्य प्रयोजन वाले पीसी और लैपटॉप (x86 प्लेटफॉर्म)यह प्रतिदिन चलता है। अनुप्रयोगों, ब्राउज़रोंव्यापक रूप से समर्थित निर्देश सेट पर ऑफिस टूल्स और मीडिया ऐप्स, मिश्रित कार्यभार में मजबूत प्रदर्शन के साथ।
- वर्कस्टेशन और servers. पावर कंप्यूटिंग-भारी और मैं / हे- वर्चुअलाइजेशन जैसे भारी कार्यभार, डेटाबेसऔर एंटरप्राइज़ अनुप्रयोगों में, जहां एक स्थिर आईएसए और कंपाइलर्स में व्यापक अनुकूलन की आवश्यकता होती है। ऑपरेटिंग सिस्टम मूल्यवान हैं.
- वर्चुअलाइजेशन और cloud होस्टिंग. सघनता का समर्थन करता है VM परिपक्व परिनियोजन और कंटेनर होस्ट के लिए धन्यवाद हार्डवेयर वर्चुअलाइजेशन की सुविधाएँ और टूलिंग और गेस्ट ओएस सपोर्ट का एक विशाल इकोसिस्टम।
- पुराने सॉफ्टवेयर के साथ संगतता। यह पुराने अनुप्रयोगों को बिना पुनर्लेखन के चालू रखता है क्योंकि CISC प्लेटफॉर्म (विशेष रूप से x86) कई CPU पीढ़ियों में बैकवर्ड कम्पैटिबिलिटी को प्राथमिकता देते हैं।
- लंबे जीवन चक्र वाले वाणिज्यिक और औद्योगिक प्रणालियाँइसका उपयोग ऐसे वातावरण में किया जाता है जहां सॉफ्टवेयर को अपग्रेड करना महंगा या जोखिम भरा होता है, इसलिए मौजूदा बाइनरी और टूलचेन के साथ संगत रहना एक व्यावहारिक आवश्यकता है।
CISC के लाभ और सीमाएँ क्या हैं?
CISC डिज़ाइन एक समृद्ध निर्देश सेट पर आधारित होते हैं जो जटिल संक्रियाओं को कम निर्देशों में व्यक्त कर सकते हैं, जिससे संकलित कोड सरल हो जाता है और हार्डवेयर की विभिन्न पीढ़ियों में संगतता बनी रहती है। साथ ही, कई निर्देश प्रारूपों और व्यवहारों का समर्थन करने से CPU की जटिलता बढ़ जाती है, जो बिजली दक्षता, डिकोडिंग ओवरहेड और समग्र डिज़ाइन लागत को प्रभावित कर सकती है। यह अनुभाग बताता है कि CISC किन क्षेत्रों में उत्कृष्ट प्रदर्शन करता है और किन क्षेत्रों में इसकी कमियाँ अधिक स्पष्ट हो जाती हैं।
CISC के लाभ
CISC आर्किटेक्चर का उद्देश्य विभिन्न प्रकार के ऑपरेशन और एड्रेसिंग मोड प्रदान करके प्रति इंस्ट्रक्शन अधिक कार्य करना है। व्यवहार में, इससे कई लाभ होते हैं, विशेष रूप से उन इकोसिस्टम में जहां अनुकूलता और परिपक्व टूलिंग महत्वपूर्ण हैं। इनमें शामिल हैं:
- उच्च कोड घनत्व (छोटे बाइनरी)। क्योंकि एक ही निर्देश कई चरणों वाला काम (जैसे मेमोरी एक्सेस और अंकगणित) कर सकता है, इसलिए प्रोग्राम अक्सर कुल मिलाकर कम निर्देशों का उपयोग करते हैं, जिससे निर्देश लाने का दबाव कम हो सकता है और कैश का बेहतर उपयोग हो सकता है।
- मजबूत बैकवर्ड कम्पैटिबिलिटीCISC प्लेटफॉर्म (विशेष रूप से x86) कई CPU पीढ़ियों में पुराने सॉफ़्टवेयर को चलाने की क्षमता को बनाए रखने की प्रवृत्ति रखते हैं, जिससे लंबे समय तक चलने वाले अनुप्रयोगों की सुरक्षा होती है और माइग्रेशन लागत कम हो जाती है।
- Flexपता लगाने योग्य मोडCISC निर्देश मेमोरी को अधिक विविध तरीकों से संदर्भित कर सकते हैं (बेस + इंडेक्स + ऑफसेट, स्केल्ड इंडेक्स, आदि), जिससे एड्रेस गणना और डेटा मूवमेंट के लिए अतिरिक्त निर्देशों को कम किया जा सकता है।
- परिपक्व कंपाइलर और टूलिंग इकोसिस्टम। लोकप्रिय CISC ISA में कंपाइलर, डिबगर, प्रोफाइलर और परफॉर्मेंस लाइब्रेरी में दशकों का ऑप्टिमाइजेशन है, जिससे सॉफ्टवेयर बनाना और ट्यून करना आसान हो जाता है।
- जटिल संक्रियाओं की कुशल अभिव्यक्तिकुछ कार्यों को सीधे एन्कोड किया जा सकता है (उदाहरण के लिए, स्ट्रिंग और बिट हेरफेर, या विशेष अंकगणितीय संचालन), जो कंपाइलर आउटपुट को सरल बना सकता है और कभी-कभी विशिष्ट पैटर्न के लिए प्रदर्शन में सुधार कर सकता है।
- मिश्रित कार्यभार पर व्यावहारिक प्रदर्शन। आधुनिक CISC CPU अक्सर स्थिर CISC ISA को उन्नत माइक्रोआर्किटेक्चर (आउट-ऑफ-ऑर्डर निष्पादन, शाखा भविष्यवाणी, डीप कैशिंग) के साथ जोड़ते हैं, जिससे सॉफ्टवेयर संगतता को बरकरार रखते हुए विविध वास्तविक दुनिया के कार्यभारों पर उच्च थ्रूपुट प्राप्त होता है।
सीआईएससी की सीमाएँ
CISC के साथ कुछ कमियां भी हैं क्योंकि यह एक बड़े नेटवर्क का समर्थन करता है, flexनिर्देश सेट में बदलाव से सीपीयू फ्रंट एंड और कंट्रोल लॉजिक में जटिलता बढ़ जाती है। ये सीमाएं CISC को "खराब" नहीं बनातीं, लेकिन ये बिजली खपत, डिजाइन लागत और प्रदर्शन प्राप्त करने के तरीके को प्रभावित करती हैं।
- अधिक जटिल निर्देश डिकोडिंगपरिवर्तनीय लंबाई वाले निर्देश और कई प्रारूप, निर्देश सीमाओं को खोजने और ऑपरेंड को डिकोड करने के लिए आवश्यक कार्य को बढ़ाते हैं, जिससे अतिरिक्त कार्य जुड़ जाता है। विलंब और फ्रंटएंड डिज़ाइन जटिलता।
- हार्डवेयर की जटिलता और सिलिकॉन की लागत दोनों ही अधिक हैं। कई निर्देशों, एड्रेसिंग मोड और लेगेसी व्यवहारों का समर्थन करने के लिए अधिक नियंत्रण तर्क (अक्सर माइक्रोकोड सहित) की आवश्यकता होती है, जिससे ट्रांजिस्टर बजट और सत्यापन प्रयास बढ़ सकते हैं।
- संभावित रूप से अधिक बिजली की खपत. अधिक जटिल फ्रंट एंड और कंट्रोल पाथ बिजली की खपत को बढ़ा सकते हैं, खासकर बिजली की कमी वाले वातावरण में सरल आईएसए की तुलना में (हालांकि आधुनिक कार्यान्वयन में व्यापक भिन्नता पाई जाती है)।
- आईएसए स्तर पर कुशलतापूर्वक पाइपलाइन बनाना अधिक कठिन है। जटिल निर्देशों में आंतरिक चरणों की संख्या भिन्न-भिन्न हो सकती है, जिससे निर्देशों को छोटे आंतरिक कार्यों में अनुवादित किए बिना एक सरल, एकसमान पाइपलाइन को डिजाइन करना अधिक कठिन हो जाता है।
- प्रदर्शन काफी हद तक आंतरिक अनुवाद (µops) पर निर्भर करता है। कई आधुनिक CISC CPU निर्देशों को सूक्ष्म संक्रियाओं में तोड़ देते हैं; प्रदर्शन फिर डिकोड पर निर्भर करता है। बैंडविड्थमाइक्रोऑप कैश और शेड्यूलिंग दक्षता, न कि केवल "जटिल निर्देश"।
- ISA की "विस्तार" और विरासत संबंधी प्रतिबंधदशकों पुरानी बैकवर्ड कम्पैटिबिलिटी को बनाए रखने से आईएसए को कितनी आक्रामक रूप से साफ किया जा सकता है, यह सीमित हो सकता है, और यह उन दुर्लभ रूप से उपयोग किए जाने वाले निर्देशों के लिए निरंतर समर्थन को बाध्य कर सकता है जिन्हें अभी भी सही व्यवहार की आवश्यकता है।
- अति-निम्न-शक्ति एम्बेडेड उपयोग मामलों के लिए कम उपयुक्तछोटे, लागत और बिजली के प्रति संवेदनशील उपकरणों में, व्यापक अनुकूलता और समृद्ध निर्देशों के लाभ अधिक जटिल कार्यान्वयन की लागत से अधिक नहीं हो सकते हैं।
CISC FAQ
यहां CISC के बारे में सबसे अधिक पूछे जाने वाले प्रश्नों के उत्तर दिए गए हैं।
CISC बनाम RISC
आइए CISC और RISC के बीच के अंतरों की अधिक विस्तार से जांच करें:
| पहलू | सीआईएससी (जटिल निर्देश सेट कंप्यूटर) | आरआईएससी (रिड्यूस्ड इंस्ट्रक्शन सेट कंप्यूटर) |
| निर्देश सेट का आकार | यह एक विशाल और विविध संस्थान है, जिसमें कई विशिष्ट प्रशिक्षण कार्यक्रम शामिल हैं। | छोटा और अधिक सरल, सामान्य कार्यों पर केंद्रित। |
| निर्देश जटिलता | निर्देश बहु-चरणीय संचालन (जैसे, लोड + गणना + भंडारण) कर सकते हैं। | निर्देश सरल हैं और आमतौर पर एक ही क्रिया को पूरा करते हैं। |
| निर्देश की अवधि | परिवर्तनीय लंबाई वाले निर्देश। | निश्चित लंबाई के निर्देश। |
| संबोधन मोड | कई एड्रेसिंग मोड, उच्च गुणवत्ता प्रदान करते हैं। flexयोग्यता | कुछ ही संबोधन मोड, जिन्हें सरल और सुसंगत रखा गया है। |
| मेमोरी एक्सेस | निर्देश सीधे मेमोरी पर कार्य कर सकते हैं। | लोड/स्टोर आर्किटेक्चर: केवल लोड और स्टोर मेमोरी तक ही पहुंच बनाते हैं। |
| सीपीयू डिजाइन की जटिलता | अधिक जटिल डिकोडिंग और नियंत्रण तर्क, जिसमें अक्सर माइक्रोकोड का उपयोग किया जाता है। | सरलीकृत डिकोडिंग और नियंत्रण तर्क। |
| पाइपलाइन दक्षता | निर्देश व्यवहार में भिन्नता के कारण ISA स्तर पर यह अधिक कठिन है। | एकसमान निर्देशों के कारण यह अधिक आसान और कुशल है। |
| कोड घनत्व | सामान्यतः उच्चतर (छोटे बाइनरी)। | सामान्यतः कम (अधिक निर्देशों की आवश्यकता है)। |
| पावर दक्षता | जटिलता के कारण आमतौर पर अधिक बिजली की खपत होती है। | आम तौर पर अधिक बिजली की बचत होती है, खासकर सरल कोर में। |
| कंपाइलर निर्भरता | निर्देश चयन के लिए कंपाइलर ऑप्टिमाइजेशन पर कम निर्भरता। | यह कंपाइलर ऑप्टिमाइजेशन पर काफी हद तक निर्भर करता है। |
| अनिच्छुक अनुकूलता | दीर्घकालिक अनुकूलता पर विशेष ध्यान दिया जाता है। | विभिन्न पीढ़ियों के बीच अनुकूलता पर कम जोर दिया जाता है। |
| सामान्य उपयोग के मामले | पीसी, लैपटॉप, वर्कस्टेशन, servers (उदाहरण के लिए, x86 सिस्टम)। | मोबाइल उपकरण, एम्बेडेड सिस्टम, एआरएमआधारित servers. |
क्या CISC कार्यक्रम के आकार को कम करता है?
हां, CISC प्रोग्राम का आकार कम कर सकता है क्योंकि इसके निर्देश अधिक समृद्ध हैं और flexविभिन्न एड्रेसिंग मोड अक्सर कंपाइलर को कम निर्देशों के साथ समान कार्य को व्यक्त करने की अनुमति देते हैं, जिससे आमतौर पर RISC कार्यान्वयन की तुलना में छोटे मशीन-कोड बाइनरी (उच्च कोड घनत्व) उत्पन्न होते हैं। हालांकि, आकार का लाभ कार्यभार, कंपाइलर और ISA विवरण पर निर्भर करता है। आधुनिक RISC कंपाइलर और विशेषताएं (जैसे कुछ ISA पर संपीड़ित निर्देश एन्कोडिंग) इस अंतर को कम कर सकती हैं, इसलिए CISC हर मामले में छोटे प्रोग्राम उत्पन्न नहीं करता है।
क्या आधुनिक सीपीयू CISC प्रमाणित हैं?
कई आधुनिक सीपीयू निर्देश-सेट स्तर पर CISC हैं, जिनमें सबसे प्रमुख x86/x86-64 अधिकांश पीसी और कई अन्य उपकरणों में इंटेल और एएमडी के प्रोसेसर का उपयोग किया जाता है। serversलेकिन आधुनिक सीपीयू का एक बड़ा हिस्सा आरआईएससी है (जैसे कि फोन और कई लैपटॉप में एआरएम, और बढ़ते एम्बेडेड और कुछ उपकरणों में आरआईएससी-वी)। server/एक्सेलेरेटर उपयोग)। इसके अलावा, भले ही सीपीयू बाहरी रूप से "CISC" (x86) हो, आधुनिक डिज़ाइन आमतौर पर निर्देशों को आंतरिक रूप से सरल माइक्रो-ऑपरेशन के रूप में निष्पादित करते हैं, इसलिए माइक्रोआर्किटेक्चर अक्सर RISC जैसा दिखता है, भले ही संगतता के लिए ISA CISC ही रहे।