एंबेडेड सिस्टम - एसएफआर रजिस्टर
एक विशेष कार्य रजिस्टर (या विशेष प्रयोजन रजिस्टर, या बस विशेष रजिस्टर) एक माइक्रोप्रोसेसर के भीतर एक रजिस्टर है जो माइक्रोप्रोसेसर के विभिन्न कार्यों को नियंत्रित या मॉनिटर करता है। चूंकि विशेष रजिस्टरों को प्रोसेसर के कुछ विशेष फ़ंक्शन या स्थिति से निकटता से जोड़ा जाता है, इसलिए वे सामान्य निर्देशों (जैसे ऐड, मूव, आदि) द्वारा सीधे लिखने योग्य नहीं हो सकते हैं। इसके बजाय, कुछ प्रोसेसर आर्किटेक्चर में कुछ विशेष रजिस्टरों को संशोधित करने के लिए विशेष निर्देशों की आवश्यकता होती है।
8051 में, रजिस्टर ए, बी, डीपीटीआर और पीएसडब्ल्यू रजिस्टर के समूह का एक हिस्सा है जिसे आमतौर पर एसएफआर (विशेष फ़ंक्शन रजिस्टर) के रूप में संदर्भित किया जाता है। एक SFR को उसके नाम या उसके पते से एक्सेस किया जा सकता है।
निम्न तालिका SFRs और उनके पते की एक सूची दिखाती है।
बाइट का पता | बिट पता | ||||||||
---|---|---|---|---|---|---|---|---|---|
सीमांत बल | |||||||||
F0 | F7 | F6 | F5 | F4 | F3 | F2 | एफ 1 | F0 | बी |
E0 | E7 | E6 | E5 | ई 4 | E3 | E2 | ई 1 | E0 | एसीसी |
D0 | D7 | D6 | D5 | D4 | डी 3 | डी 2 | - | D0 | PSW |
B8 | - | - | - | ईसा पूर्व | बी बी | बी 0 ए | B9 | B8 | आईपी |
B0 | बी 7 | बी -6 | B5 | बी 4 | बी 3 | बी 2 | बी 1 | B0 | पी 3 |
ए 2 | ए एफ | - | - | एसी | अब | आ | ए 9 | ए 8 | अर्थात |
A0 | ए 7 | ए 6 | A5 | ए 4 | ए 3 | ए 2 | ए 1 | A0 | P2 |
99 | पता योग्य नहीं | SBUF | |||||||
98 | 9 फ | 9E | 9D | 9 | 9B | 9 ए | 99 | 98 | SCON |
90 | 97 | 96 | 95 | 94 | 93 | 92 | 91 | 90 | P1 |
8 घ | पता योग्य नहीं | TH1 | |||||||
8C | पता योग्य नहीं | TH0 | |||||||
8B | पता योग्य नहीं | TL1 | |||||||
8A | पता योग्य नहीं | TL0 | |||||||
89 | पता योग्य नहीं | TMOD | |||||||
88 | 8F | 8E | 8 घ | 8C | 8B | 8A | 89 | 88 | TCON |
87 | पता योग्य नहीं | PCON | |||||||
83 | पता योग्य नहीं | DPH | |||||||
82 | पता योग्य नहीं | डीपीएल | |||||||
81 | पता योग्य नहीं | सपा | |||||||
80 | 87 | 87 | 85 | 84 | 83 | 82 | 81 | 80 | P0 |
SFR पतों के बारे में निम्नलिखित दो बिंदुओं पर विचार करें।
एक विशेष फ़ंक्शन रजिस्टर में 80H से FFH के बीच एक पता हो सकता है। ये पते 80H से ऊपर हैं, क्योंकि 00 से 7FH तक के पते 8051 के अंदर रैम मेमोरी के पते हैं।
एसएफआर द्वारा 80 से एफएफ के सभी पता स्थान का उपयोग नहीं किया जाता है। अप्रयुक्त स्थान, 80H से FFH, आरक्षित हैं और 8051 प्रोग्रामर द्वारा उपयोग नहीं किए जाने चाहिए।
सीवाई | PSW.7 | ध्वज ले जाना |
एसी | PSW.6 | सहायक कैरी फ्लैग |
F0 | PSW.5 | ध्वज 0 सामान्य प्रयोजन के लिए उपयोगकर्ता के लिए उपलब्ध है। |
RS1 | PSW.4 | रजिस्टर बैंक चयनकर्ता बिट 1 |
RS0 | PSW.3 | रजिस्टर बैंक चयनकर्ता बिट 0 |
OV | PSW.2 | ओवरफ्लो झंडा |
- | PSW.1 | उपयोगकर्ता निश्चित फ्लैग |
पी | PSW.0 | पैरिटी FLAG। संचायक में 1 बिट के सम / विषम संख्या को इंगित करने के लिए अनुदेश चक्र के दौरान हार्डवेयर द्वारा सेट / क्लियर किया गया। |
निम्नलिखित उदाहरण में, SFR रजिस्टरों के नाम उनके पते के साथ बदल दिए जाते हैं।
सीवाई | एसी | F0 | RS1 | RS0 | OV | - | पी |
---|
हम RS0 और RS1 बिट्स का उपयोग करके संबंधित रजिस्टर बैंक बिट का चयन कर सकते हैं।
RS1 | RS2 | बैंक रजिस्टर करें | पता |
---|---|---|---|
0 | 0 | 0 | 00H-07h |
0 | 1 | 1 | 08H-0FH |
1 | 0 | 2 | 10H-17h |
1 | 1 | 3 | 18h-1FH |
CPU की वर्तमान स्थिति को दर्शाने के लिए प्रोग्राम स्टेटस वर्ड (PSW) में स्टेटस बिट्स होते हैं। 8051 वेरिएंट इस स्थिति की जानकारी के साथ एक विशेष फ़ंक्शन रजिस्टर, PSW प्रदान करते हैं। 8251 दो अतिरिक्त स्थिति ध्वज प्रदान करता है, Z और N, जो PSW1 नामक एक दूसरे विशेष फ़ंक्शन रजिस्टर में उपलब्ध हैं।