कोड को देखने के लिए सबसे अच्छा (सबसे तेज़) तरीका क्या है जो मेरी फ़ाइलों से संकलित संकलक है? मैं ज्यादातर सी ++ का उपयोग कर रहा हूं लेकिन एक समाधान जो .NET भाषाओं के लिए काम करता है, उसका भी स्वागत है।विजुअल स्टूडियो 2010 में सी ++ फ़ंक्शन के लिए संकलित मशीन कोड या बाइट कोड कैसे देखूं?
उत्तर
विजुअल स्टूडियो के भीतर, अपनी परियोजना के लिए प्रॉपर्टी पेज पर जाएं, फिर C/C++ → Output Files → Assembler Output
पर जाएं। यह कुछ इस तरह दिखना चाहिए:
नोट इसी संकलक स्विच, /FA
के सभी वेरिएंट।
/FA
: विधानसभा केवल लिस्टिंग/FAcs
: विधानसभा, मशीन कोड और स्रोत/FAc
: विधानसभा मशीन कोड/FAs
के साथ: साथ स्रोत कोड
नीचे विधानसभा " असेंबल आउटपुट "विकल्प में" एएसएम सूची स्थान "विकल्प है। यह /Fa
स्विच (नोट पूंजीकरण!) के बराबर है, और यह आउटपुट लिस्टिंग का फ़ाइल पथ सेट करता है।
आप डीबगिंग (ब्रेकपॉइंट पर) के दौरान असेंबली को देख सकते हैं, संबंधित स्रोत कोड के साथ पूरा कर सकते हैं, स्रोत फ़ाइल टेक्स्ट क्षेत्र में वर्तमान पंक्ति पर राइट-क्लिक करके और "Disassembly पर जाएं" पर क्लिक करके।
यह लाइन पर विधानसभा पर पहुंच जाएंगे आप दायाँ क्लिक किया है एक अलग टैब में पर। सूची इस सदृश होगा:
हाँ मैं जानता हूँ कि, स्क्रीनशॉट दृश्य स्टूडियो 2010 से नहीं हैं, लेकिन कदम और सामान्य उपस्थिति ही हैं। मेरे पास स्क्रीनशॉट बनाने के लिए बस VS2010 तक तुरंत पहुंच नहीं है। :-)
दबाएं यह उत्तर _awesome_ है। हालांकि, मुझे विश्वास है कि जब आप इसे असेंबलर आउटपुट करते हैं, तो मेरा मानना है कि यह द्विआधारी नहीं बनाता है। अगर मुझे यह सही याद है, तो आपको इसे कहीं भी ध्यान रखना चाहिए। –
@MooingDuck: यह एक अलग प्रीप्रोसेसर रन (/ पी) के लिए सच है, लेकिन कम से कम वीसी -2010 में,/एफए वेरिएंट अभी भी बाइनरी उत्पन्न करते हैं। –
.NET के लिए आप ildasm
उपकरण का उपयोग कर सकते हैं जो आईएल देखने के लिए ढांचे के साथ आता है।
ब्रेकपॉइंट सेट करें, CTRL + F11 –