當前位置:首頁 » 編程軟體 » 反匯編與編譯的區別

反匯編與編譯的區別

發布時間: 2023-01-26 21:28:44

『壹』 反匯編與匯編一樣嗎有什麼不同

匯編是最基礎的計算機編程語言,用作動詞時就是說用匯編語言寫成的程序代碼經過編譯連接之後生成可執行程序的過程。而反匯編就是這個過程的逆過程,一般是針對商業軟體或病毒等不知道源程序是如何書寫的程序,經過反匯編,將由機器碼(即一條條01組成的指令)方向翻譯為匯編指令,這樣一定程度上可以讓人們理解認識程序的編寫方式,使用的演算法特點等,但是針對反匯編,有許多方法可以加大反匯編的難度,比如說在程序中加殼,使用大量跳轉等

『貳』 反匯編與逆向編程的區別

反匯編只是按將010二進制碼這樣的目標碼分析解釋成Assembler ,所以我們叫DisAssembler,當然這與教科書上的匯編語言是不同的,這是由編譯器優化生成的目標代碼,而反匯編只是將通過如intel 指令手冊就可以將之轉換出來,而逆向編程是在反匯編的基礎上,然後分析他的邏輯,從而用高級語言或是流式語言進行二次編程,比較常見的,就是使用嵌入asm(c語言),再則因為匯編的條件啥的其實基本都在goto,所以你用老一套的跟,只到你跟出自己的思路來了,那就真的就是逆向編程了,不過現在多是以上兩種,當然高手我就沒資格評論了.

『叄』 匯編與反匯編

可以的,但是反編譯的效果最常見的就是反編譯成匯編語言,但是說你寫一個C的程序已經編譯程.exe文件了,然後又想用工具對.exe文件進行反編譯,那麼就只能反編譯到匯編語言的狀態,不可能反編譯到C的狀態,雖然現在網上有些人能反匯編成C,但是效果也不好,有很多的錯誤。
編譯的過程是不可逆的,就好像你把豬殺了做成香腸,然後你又想把想把香腸變成豬一樣。最多能把香腸又變成肉末,變成豬你聽過嗎?道理就這樣

『肆』 反匯編和反編譯的區別

反匯編得到的是匯編代碼
反編譯得到的是所用語言的源代碼

比如,一個c語言寫的程序
反匯編得到匯編代碼
反編譯得到c語言的源代碼

『伍』 反匯編和反編譯得差別

匯編是將匯編語言源程序翻譯成目標程序的過程;
編譯是將高級語言源程序翻譯成目標程序的過程;
反匯編是匯編的逆過程,即將目標程序翻譯成匯編程序的過程;
反編譯是編譯的逆過程。

『陸』 我想知道逆向編程與反匯編的區別

反匯編就是把機器語言轉為匯編語言代碼,正常來講是用來做DEBUG的,不過現在基本上都是指破解、漢化、和某種目的的「學習」源代碼……

至於你說的逆向編程嘛,其實就是程序的逆向工程,一般程序設計時是由模型先分析再設計然後編碼,而逆向設計就是從代碼入手,以還原數據模型等內容,通俗來講,這個過程就是仿造,個人認為最好理解的例子就是山寨產品就是逆向工程的代表作……

你看到別人寫的某個程序能夠做出某種漂亮的動畫效果,你通過反匯編、反編譯和動態跟蹤等方法,分析出其動畫效果的實現過程,這種行為就是逆向工程

而且不光軟體,很多硬體設計也是通過逆向工程來做產品設計的,比如某公司生產的滑鼠為例,就其功能而言,只需要有三個按鍵就可以滿足使用需要,但是,怎樣才能讓滑鼠的手感最好,而且經過長時間使用也不易產生疲勞感?

因此該公司首先根據人體工程學製作了幾個模型並交給使用者評估,然後根據評估意見對模型直接進行修改,直至修改到大家都滿意為止,最後再將模型數據利用逆向工程軟體生成 CAD 數據,然後就是市面上的人體工程學滑鼠了

『柒』 反匯編是什麼

反匯編:把目標代碼轉為匯編代碼的過程。
通常,編寫程序是利用高級語言如C,Pascal等高級語言進行編程的,然後再經過編譯程序生成可以被計算機系統直接執行的文件。反匯編即是指將這些執行文件反編譯還原成匯編語言或其他高級語言。但通常反編譯出來的程序與原程序會存在許多不同,雖然執行效果相同,但程序代碼 會發生很大的變化,非編程高手很難讀懂。
另外,有許多程序也可以 進行逆向操作即反編譯以求修改,例如Flash的文件生成的SWF文件,也可以被反匯編成Flash原碼,但會發現與原程序有很大變化。反匯編可以通過反匯編的一些軟體實現DEBUG也能反匯編的,DEBUG文件位置-u,這樣就能實現了。
靜態反匯編是從反匯編出來的程序清單上分析,從提示信息入手進行分析。目前,大多數軟體在設計時,都採用了人機對話方式。所謂人機對話,即在軟體運行過程中,需要由用戶選擇的地方,軟體即顯示相應的提示信息,並等待用戶按鍵選擇。而在執行完某一段程序之後,便顯示一串提示信息,以反映該段程序運行後的狀態,是正常運行,還是出現錯誤,或者提示用戶進行下一步工作的幫助信息。為此,如果我們對靜態反匯編出來的程序清單進行閱讀,可了解軟體的編程思路,以便順利破解。
常用的靜態分析工具是W32DASM、OllyDbg IDA和HIEW等。簡單地講,反匯編可以看到軟體作者的編程思路,可以破解部分資源,可以將軟體漢化等,例如找到它是如何注冊的,從而解出它的注冊碼。

『捌』 請問:反匯編與反編譯有什麼差別

有一定區別~一般編譯型語言的程序叫反編譯~解釋型語言的程序叫反匯編~用IDA的一個插件可以做到反匯編一些程序的到源代碼的~

『玖』 什麼是匯編與反匯編,具體用途在於什麼

在計算機專業里「匯編」有作為名詞用的和作為動詞用的兩種意思。做名詞時,是「匯編語言」的簡稱,它是一種把CPU可執行的指令用符號化表示出來的一種語言,是繼「機器語言」後的第二代語言(現在常用的C、Basic、Java等屬於第三代語言)。作為動詞用的時候是指把第三代語言程序轉變為匯編語言程序的過程。懂匯編語言的人可以通過修改高級語言匯編出來的程序修改,使它具有更高的運行效率。
「反匯編」是指把可執行程序(如*.exe或*.DLL)轉化為匯編語言程序的過程。通過反匯編可以把你沒有源代碼的可執行程序變成可以閱讀的匯編語言程序,你可以從中修改(如:破解密碼)或找出它的運做過程(如:找出病毒的感染過程、藏身位置、發作條件等,用手工去除殺毒軟體對付不了的病毒)。不過要小心的是不要因為破解人家的軟體觸犯了法律!

『拾』 編譯程序得到的匯編碼和反匯編得到的匯編碼 是不是完全一樣

匯編語言編寫的程序,反匯編後,是一樣的,只是有些標號寫法不同。
C語言編寫的,反匯編後,顯然和C源程序是不同的。

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:830
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:1095
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:801
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:965
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:856
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1209
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:429
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:309
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:984
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:953