पर बैंक किए गए रजिस्ट्रारों की स्पष्ट रूप से पहुंच एआरएम मैनुअल के अनुसार, उदाहरण के लिए, "r13_svc" के रूप में, एक विशिष्ट CPU मोड के लिए बैंकर रजिस्टरों तक पहुंचना संभव होना चाहिए। जब मैं करने की कोशिश इस जीसीसी निम्न त्रुटि के साथ मुझे चिल्लाता:एआरएम
तत्काल अभिव्यक्ति एक # उपसर्ग की आवश्यकता है - `mov r2, sp_svc '
क्या गलत है?
अद्यतन। ARMv5 और ARMv6 के लिए एआरएम वास्तुकला संदर्भ मैनुअल से निम्न पाठ मुझे विश्वास है कि यह संभव है, अनुभाग A2.4.2 नेतृत्व:
Registers R13 and R14 have six banked physical registers each. One is used in User and System modes, and each of the remaining five is used in one of the five exception modes. Where it is necessary to be specific about which version is being referred to, you use names of the form: R13_mode R14_mode where mode is the appropriate one of usr, svc (for Supervisor mode), abt, und, irq and fiq.
मैं इसे समझता हूं। कृपया एआरएम आर्किटेक्चर रेफरेंस मैनुअल – Demiurg
@ डेमियर्ग से पाठ के संबंध में ऊपर दिए गए अपडेट को देखें, यह अनुच्छेद केवल दस्तावेज़ के सम्मेलनों के लिए कोड लिखने का जिक्र नहीं कर रहा है। चूंकि बैंक किए गए रजिस्ट्रार अलग हैं, इसलिए उनके पास अद्वितीय नाम होना चाहिए ताकि सभी भ्रमित न हों। यह यह इंगित करने की कोशिश नहीं कर रहा है कि आप उन नामों का उपयोग अपने असेंबली कोड में कर सकते हैं। किताब में बाद में निर्देश संदर्भ और संबोधित मोड अनुभाग स्पष्ट है कि आप क्या कर सकते हैं और क्या नहीं कर सकते हैं। –
आप शायद – Demiurg