मुझे यकीन नहीं है कि सी या सी ++ भाषा मानक निर्देश के बारे में बोलते हैं; आप मानव गुलामों के एक बड़े समूह द्वारा निष्पादित किए जाने के लिए संकलित एक सी प्रोग्राम चला सकते हैं (लेकिन यह अनौपचारिक होगा, भले ही मानक अनुरूप हो)। आप अपने आप को एक पेंसिल और पेपर के साथ एक सरल छोटे कार्यक्रम चला सकते हैं, आप एक सी दुभाषिया, आदि ... आदि का उपयोग कर सकते हैं ...
एक अनुकूलन सी या सी ++ कंपाइलर कुछ सी कथनों का अनुवाद कई मशीन निर्देशों में भी करेगा विभिन्न स्थानों पर स्थित (विशेष रूप से, कंपाइलर्स इनलाइन या क्लोन फ़ंक्शन या यहां तक कि बुनियादी ब्लॉक भी करते हैं, यहां तक कि स्रोत कोड में inline
कीवर्ड के बिना)।
अधिकांश सिस्टम पर, आप एक दिनचर्या कोड (उदाहरण के लिए असेंबली) को सौंप सकते हैं जो एक सूचक मूल्य के रूप में लौटाता है (यानी कॉलर का पता)।
जीसीसी (और संगत कंपाइलर्स, शायद क्लैंग/एलएलवीएम) के साथ, आप __builtin_return_address और संबंधित बिल्टिन का उपयोग कर सकते हैं।
लिनक्स पर जीएनयू लिबिक आपको backtrace प्रदान करता है (लेकिन जब मैंने कोशिश की, तो मुझे इसके द्वारा निंदा की गई है)।
सूचना इन चाल जब -fno-frame-pointer
साथ संकलन काम नहीं हो सकता है कि तुम भी जीसीसी जैसे अनुरूपण पर विचार हो सकता प्लगइन्स या MELT एक्सटेंशन के साथ (एमईएलटी एक डोमेन विशिष्ट भाषा है, जिसे जीसीसी में जीपीएलवी 3 प्लगइन के रूप में कार्यान्वित किया गया है, जीसीसी को सी में कोडित प्लगइन की तुलना में अधिक आसानी से विस्तारित करने के लिए)। आपका कस्टमाइज्ड जीसीसी उपयुक्त स्थानों पर उपकरण कार्यों में कॉल डाल सकता है।
स्रोत
2012-07-17 20:56:01
आप क्यों पूछते हैं? –
सी ++ निर्देशों के साथ लागू करने की आवश्यकता नहीं है। –
हाय बेसिल, मैं वर्तमान में निर्देश/डेटा घड़ी सुविधाओं पर कुछ शोध कर रहा हूं। – nigong