2013-04-08 94 views
-2

我想知道是否有人對如何看待簡單的英特爾彙編語言並將其轉換爲C代碼有一些專業提示。任何幫助都會很棒。謝謝!從英特爾彙編語言手動編寫C代碼?

+2

reverseengineering.stackexchange.com開放給公衆...這個問題更適合於該網絡。它仍處於測試階段,儘管 – 2013-04-08 16:26:39

+0

請參閱最近更新的[Decompiling wiki條目](http://stackoverflow.com/tags/decompiling/info)。沒有這個問題是重複的!我寫了這篇文章是因爲我看過很多次這個概念。 – 2013-04-08 16:49:08

+0

可能重複:[開源反編譯](http://stackoverflow.com/questions/711220/opensource-cc-decompiler),[什麼是好的反編譯](http://stackoverflow.com/questions/193896/whats -a好-C-反編譯),[有交流反編譯](http://stackoverflow.com/questions/205059/is-there-ac-decompiler) – 2013-04-08 17:00:43

回答

3

試圖反編譯器,可以在線與谷歌相對於-ING輕鬆找到,但結果各不相同,有些不一致,主要是由於這樣的事實,你的反編譯往往是盲目的由原始編譯器進行的優化。最常見的情況是,僅查看實用程序庫的精簡版本,幾乎不可能找到原始包含路徑。

此外,反編譯器傾向於顯示,在C語言中,與大多數源語言一樣,真正有大約一百萬種方法來編寫給定的函數。簡而言之,在x86和原始源之間進行1-1翻譯幾乎是不可能的。

你最好打賭就是在閱讀x86時非常好。最終,你會開始注意到某些代碼段的模式(switch語句,if-else塊,while循環等),並且可以讓你瞭解給定塊的基本概念。

+1

想補充一點,我不得不做這絕對與舊的ARM彙編源程序。儘管如此,我結束了更好的過程! – 2013-04-08 16:43:04