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