gdb

2009-02-26 16 views
28

में असेंबली में स्विचिंग क्या जीडीबी में सी या सी ++ प्रोग्राम डीबग करते समय असेंबली पर स्विच करने का कोई तरीका है? (यह देखते हुए कि सभी स्रोत फाइलें और उनकी संबंधित असेंबली फाइलें उपलब्ध हैं)gdb

उत्तर

20

किसी फ़ंक्शन या कोड के एक निश्चित अनुभाग को अलग करने का कोई तरीका है, क्या आप इसके बाद क्या कर रहे हैं?

ऐसा करने का आदेश disassemble <function name> या स्मृति स्थान होगा।

क्या आप इसका जिक्र कर रहे हैं?

(gdb) help disassemble 
Disassemble a specified section of memory. 
Default is the function surrounding the pc of the selected frame. 
With a single argument, the function surrounding that address is dumped. 
Two arguments are taken as a range of memory to dump. 
4

डिस्का कमांड का उपयोग शायद आप जो चाहते हैं वह करेंगे।

Disassemble a specified section of memory. 
Default is the function surrounding the pc of the selected frame. 
With a single argument, the function surrounding that address is dumped. 
Two arguments are taken as a range of memory to dump. 
10

नई gdb संस्करण 7.0 में, disassemble आदेश एक नया तर्क /m जो इसे मिलाया स्रोत और disassembly फेंकना बनाता है ले जा सकते हैं:

आंतरिक मदद के अनुसार, disas कमान निम्नलिखित है।

55

आप gdb में एएसएम लेआउट करने के लिए स्विच कर सकते हैं:

(gdb) layout asm 

अधिक जानकारी के लिए here देखें।

1

यही सवाल भी पर cgdb के googlegroup में पूछा गया था https://groups.google.com/forum/?hl=de&fromgroups=#!topic/cgdb-users/E-jZCJiBAQQ

कोई जवाब अभी तक क्यों लेआउट एएसएम does not काम हालांकि

संपादित करें: वे हाल ही में पोस्ट और कहा कि इसकी एक विशेषता यह है कि अभी तक लागू नहीं है। (उपरोक्त लिंक देखें)

 संबंधित मुद्दे