關于芯片程序的機器碼、匯編代碼、源代碼常常是令人混淆的幾個概念,今天我們主要給大家介紹一下這幾種代碼的特點和一般功能。
機器碼
機器碼顧名思義是單片工作且能識別和運行的一類代碼,常見的格式有二進制BIN格式、十進制HEX格式等。簡單來說就是便于機器識別的高低電平組合,每個單片機里都有狀態分析電路能分析每個機器碼的含義從而驅動單片機運行。機器碼的優點是一般存儲較小,便于單片機識別,缺點也很明顯就是人無法讀懂和直接進行功能修改。
匯編代碼
匯編代碼的概念就是面向機器的程序設計語言,在匯編語言中用助記符號代替操作碼,用標號或者地址符代替地址碼,用符號代替機器碼,把機器語言轉換成可簡單讀懂的匯編語言,也稱做符號語言。這里所說的可讀懂只是對于熟悉編程的專業人員可以部分,如果需要進行比較復雜的逆向工程功能分析修改、注冊碼尋找、漏洞分析等,通常難以完成的,所以在逆向工程領域又要引出另外一種代碼-源代碼的概念。
源代碼
源代碼也稱源程序,這是一種人類可讀可修改的計算機語言,源代碼即我們技術人員平時的開發代碼,通常以C語言、JAVA語言、PYTHON語言等工具實現,其中C語言是大家使用最廣泛也是最為熟悉的工具。擁有源代碼的好處不言而喻,既可以立即讀懂(專業人員)也可以實現任意功能修改,在逆向工程領域,掌握源代碼即掌握程序的所有權。
總結
近年來,由于客戶對于產品性能的不斷優化,越來越多的客戶需要將機器碼反匯編甚至反C源代碼來修改和升級產品的功能,實質上完整的反C代碼是基本不可能實現的,但我們可以利用機器碼進行反匯編操作,再通過匯編代碼進行反C操作得到一個偽C代碼,只是工作量巨大所以一般成本較高。這樣得到的源代碼也是技術工程人員可以讀懂的,如果需要進行程序修改升級就簡單的多了。目前我們已經為客戶做過很多相關案例,擁有豐富的經驗和實力。
審核編輯:劉清
-
單片機
+關注
關注
6035文章
44554瀏覽量
634691 -
匯編語言
+關注
關注
14文章
409瀏覽量
35793 -
機器碼
+關注
關注
0文章
12瀏覽量
8310 -
機器識別
+關注
關注
1文章
13瀏覽量
2533
原文標題:關于機器碼、匯編代碼、源代碼特點和功能,是否可以直接轉換
文章出處:【微信號:zhixinkeji2015,微信公眾號:芯片逆向】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論