2010-07-13 10 views
7

क्या कोई ऐसा प्रोग्राम है जो असेंबली को सी या सी ++ में परिवर्तित करेगा? मैंने बहुत सी खोज की लेकिन मुझे कुछ भी नहीं मिला जो काम करता है। "बुमेरांग" नामक एक कार्यक्रम है; यह बहुत अच्छा लग रहा है और बस चाहता था कि मैं चाहता हूं, लेकिन जब मैं इसका उपयोग करने की कोशिश करता हूं तो यह बहुत अस्थिर और क्रैश होता है। (boomerang)असेंबली को सी ++ में बदलने के लिए कोई प्रोग्राम है?

क्या कोई अन्य मुफ्त प्रोग्राम है जो ऐसा करेगा?

+0

कई डुप्लिकेट, उदा। [क्या ओबीजे को सी/सी ++ कोड में परिवर्तित करने के लिए एक डिकंपेलर है) (http://stackoverflow.com/questions/669003/is-there-a-decompiler-to-convert-a-obj-into-cc-code) –

उत्तर

1

यह संभव नहीं है।

यह नहीं किया जा सकता है।

यह प्राणियों की समझ से परे है।

ठीक है, जब तक कि सी कोड एम्बेडेड असेंबली का उपयोग नहीं करता है। लेकिन यहां तक ​​कि यह थोड़ा iffy है।

ध्यान दें कि एक डीकंपलर "असेंबली को सी में परिवर्तित नहीं करता"। एक decompiler अनुमानित एक प्रोग्राम का मूल स्रोत कोड का प्रयास करता है। मानचित्रण अनिवार्य रूप से सही नहीं है, और मनमानी असेंबली के लिए संभव नहीं है (फिर से, जब तक आप परिणामस्वरूप सी में इनलाइन असेंबली का उपयोग नहीं करते)।

+0

एह? नहीं ... यह सही नहीं होगा, लेकिन इसे कम से कम एक उच्च स्तर के रूप में प्राप्त करना ताकि काम करना आसान हो, फिर भी एक अच्छी शुरुआत है। – mpen

+1

-1 डिकंपील्ड कोड का रखरखाव मुश्किल हो सकता है लेकिन यह किया जा सकता है। – zoli2k

+1

@ zoli2k: नहीं, मनमानी असेंबली के लिए, यह नहीं किया जा सकता है। सी की क्षमताओं असेंबली भाषा के ढीले superset नहीं हैं। उदाहरण के लिए, मान लें कि मेरी असेंबली में "टीएसटी% आर 1" शामिल है। यह निर्देश प्रोसेसर चरण काउंटर को 1 तक बढ़ने का कारण बनता है, लेकिन यदि मैं परिणाम का उपयोग नहीं करता, तो इसका कोई अन्य प्रभाव नहीं पड़ता है। कोई सी कोड नहीं है जो इस अकेले निर्देश के बराबर है। कई अन्य उदाहरण हैं - प्रोसेसर आंतरिक रजिस्टरों को पढ़ना, I/O उपकरणों को सीधे लिखना, यहां तक ​​कि एचएलटी निर्देश भी। मैंने जो कहा वह सही था। – Borealid

1

एएसएम से सी और Datatek एएसएम से सी/सी ++/कोबोल/सी # में कनवर्ट करने वाले Regolix अनुवादक जैसे रूपांतरण करने में सक्षम कुछ उपकरण हैं। हालांकि, मुझे लगता है कि परिवर्तित कोड का रखरखाव समस्याग्रस्त हो सकता है।

+0

हाँ मैंने दोनों थोज़ को देखा है Relogix मुझे समझ में नहीं आता है कि मुझे लगता है कि यह बनाया गया है और इसका उपयोग कैसे किया जाए। और डेटाटेक आपको इसके लिए भुगतान करना होगा। मैंने देखा लेकिन मुझे डाउनलोड करने के बारे में कुछ भी नहीं मिला, आपको उन्हें खरीदने के बारे में बात करने के लिए बुलाया जाना है। – blood

2

जो आप खोज रहे हैं वह एक डिकंपेलर है।

आप एएसएम स्रोत की तुलना में वास्तव में कुछ बेहतर नहीं करेंगे, और मुझे पूरा यकीन है कि आप सी के साथ समाप्त होने जा रहे हैं, सी ++ नहीं।

+0

मुझे नहीं लगता कि मैं एक डिकंपेलर चाहता हूं, मेरे पास असेंबली कोड है लेकिन मैं इसे सी ++ में बदलना चाहता हूं। – blood

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