0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

介紹一下機器碼與匯編代碼的特點和一般功能

芯片逆向 ? 來源:芯片逆向 ? 2023-03-31 10:40 ? 次閱讀

關(guān)于芯片程序的機器碼、匯編代碼、源代碼常常是令人混淆的幾個概念,今天我們主要給大家介紹一下這幾種代碼的特點和一般功能。

機器碼

機器碼顧名思義是單片工作且能識別和運行的一類代碼,常見的格式有二進制BIN格式、十進制HEX格式等。簡單來說就是便于機器識別的高低電平組合,每個單片機里都有狀態(tài)分析電路能分析每個機器碼的含義從而驅(qū)動單片機運行。機器碼的優(yōu)點是一般存儲較小,便于單片機識別,缺點也很明顯就是人無法讀懂和直接進行功能修改。

匯編代碼

匯編代碼的概念就是面向機器的程序設(shè)計語言,在匯編語言中用助記符號代替操作碼,用標號或者地址符代替地址碼,用符號代替機器碼,把機器語言轉(zhuǎn)換成可簡單讀懂的匯編語言,也稱做符號語言。這里所說的可讀懂只是對于熟悉編程的專業(yè)人員可以部分,如果需要進行比較復(fù)雜的逆向工程功能分析修改、注冊碼尋找、漏洞分析等,通常難以完成的,所以在逆向工程領(lǐng)域又要引出另外一種代碼-源代碼的概念。

源代碼

源代碼也稱源程序,這是一種人類可讀可修改的計算機語言,源代碼即我們技術(shù)人員平時的開發(fā)代碼,通常以C語言、JAVA語言、PYTHON語言等工具實現(xiàn),其中C語言是大家使用最廣泛也是最為熟悉的工具。擁有源代碼的好處不言而喻,既可以立即讀懂(專業(yè)人員)也可以實現(xiàn)任意功能修改,在逆向工程領(lǐng)域,掌握源代碼即掌握程序的所有權(quán)。

總結(jié)

6d2a0e82-cee2-11ed-bfe3-dac502259ad0.jpg

近年來,由于客戶對于產(chǎn)品性能的不斷優(yōu)化,越來越多的客戶需要將機器碼反匯編甚至反C源代碼來修改和升級產(chǎn)品的功能,實質(zhì)上完整的反C代碼是基本不可能實現(xiàn)的,但我們可以利用機器碼進行反匯編操作,再通過匯編代碼進行反C操作得到一個偽C代碼,只是工作量巨大所以一般成本較高。這樣得到的源代碼也是技術(shù)工程人員可以讀懂的,如果需要進行程序修改升級就簡單的多了。目前我們已經(jīng)為客戶做過很多相關(guān)案例,擁有豐富的經(jīng)驗和實力。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 單片機
    +關(guān)注

    關(guān)注

    6023

    文章

    44376

    瀏覽量

    628331
  • 匯編語言
    +關(guān)注

    關(guān)注

    14

    文章

    406

    瀏覽量

    35567
  • 機器碼
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

    8287
  • 機器識別
    +關(guān)注

    關(guān)注

    1

    文章

    13

    瀏覽量

    2524

原文標題:關(guān)于機器碼、匯編代碼、源代碼特點和功能,是否可以直接轉(zhuǎn)換

文章出處:【微信號:zhixinkeji2015,微信公眾號:芯片逆向】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    機器碼提取, 芯片破譯

    本帖最后由 北風凜冽 于 2012-6-28 16:12 編輯 小弟現(xiàn)在的項目是要從集成電路的芯片里面提取程序的二進制代碼出來,哪位大神能提供MSP430系列和RENESAS系列芯片內(nèi)部機器碼提取的方法?跪求?。。?! {:23:}
    發(fā)表于 06-28 15:55

    求助機器碼問題

    機器碼在兩種不同的單片機實現(xiàn)的功能樣嗎?
    發(fā)表于 07-29 23:18

    ARM匯編指令集與偽指令說明

    嵌入式知識-學習筆記(2):ARM匯編指令集與偽指令首先說明一下指令和偽指令的區(qū)別:指令:是CPU機器指令的助記符,經(jīng)過編譯后會得到串由1、0組成的
    發(fā)表于 12-14 06:50

    介紹些常見的匯編語句

    即使使用C/C++或者其他高級語言編程,最后也會被編譯工具轉(zhuǎn)換為匯編代碼,并最終作為機器碼存儲在內(nèi)存、硬盤或者其他存儲器上。在調(diào)試程序時,經(jīng)常需要閱讀它的匯編
    發(fā)表于 12-20 06:05

    下機器人制作需要實現(xiàn)哪些功能

    有幸獲得了省賽等獎,實屬來之不易。中途也遇到了很多的困難,在賽后稍微做一下總結(jié),也算分享些經(jīng)驗提示:以下是本篇文章正文內(nèi)容,僅涉及到設(shè)計部分、水
    發(fā)表于 01-11 06:51

    如何將高級C語言編譯成機器碼

    的相關(guān)知識,在集成SOC環(huán)境的時候,我們需要集成工具鏈用于編譯C語言生成機器碼。機器碼生成了,該怎么輸入給CPU使用呢?后面期文章將和大家介紹CPU boot的幾種方式。原作者:IC
    發(fā)表于 06-01 16:53

    GCC怎么生成128bit自定義擴展指令的匯編碼和機器碼

    我現(xiàn)在自定義了套128bit的指令,對應(yīng)的處理器也寫了,現(xiàn)在想測試一下結(jié)果和功能。想把自己定義的指令變成匯編碼和機器碼用來測試處理器。想請
    發(fā)表于 08-12 07:26

    移動基站的一般特點

    移動基站的一般特點   移動基站的一般特點:  ?。?)交流供電復(fù)雜。有的為三相供電,有的為單相供電,
    發(fā)表于 05-22 01:33 ?1051次閱讀

    如何對單片機的機器碼進行反編譯代碼免費下載

    應(yīng)個做硬件的同事的要求,他利用其他軟件可以得到十六進制的機器碼,希望做個簡單的軟件,可以將機器碼反編譯成匯編指令。本來網(wǎng)上應(yīng)該有很多這方
    發(fā)表于 07-17 17:38 ?11次下載
    如何對單片機的<b class='flag-5'>機器碼</b>進行反編譯<b class='flag-5'>代碼</b>免費下載

    機器碼怎么改

    機器碼指的是將硬件序列號經(jīng)過系列加密、散列形成的串序列號。硬盤,CPU都有個無法修改的識別。網(wǎng)卡的MAC其實也算
    的頭像 發(fā)表于 08-05 11:09 ?1.6w次閱讀

    電腦機器碼怎么修改

    在搜狗瀏覽器搜索欄輸入:修改機器碼軟件下載 。然后點擊進入根據(jù)個人愛好下載修改機器碼軟件。
    的頭像 發(fā)表于 08-09 15:35 ?5.8w次閱讀
    電腦<b class='flag-5'>機器碼</b>怎么修改

    機器碼是什么

    機器碼指的是,將硬件序列號經(jīng)過系列加密、散列之后形成的串序列號。一般情況硬盤和CPU都有
    的頭像 發(fā)表于 08-09 15:44 ?3w次閱讀
    <b class='flag-5'>機器碼</b>是什么

    單片機的指令和機器碼功能覽表資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是單片機的指令和機器碼功能覽表資料免費下載。
    發(fā)表于 12-02 08:00 ?5次下載
    單片機的指令和<b class='flag-5'>機器碼</b>與<b class='flag-5'>功能</b><b class='flag-5'>一</b>覽表資料免費下載

    RISC-V匯編簡介

    沒有對應(yīng)匯編指令,c.其他符合:如+、-、*、/等,由編譯器識別,沒有對應(yīng)的機器碼。匯編語法介紹:[LABEL:][OP][COMM]LABEL:...
    發(fā)表于 12-08 18:21 ?9次下載
    RISC-V<b class='flag-5'>匯編</b>簡介

    匯編學習入門之第匯編程序

    *經(jīng)過理論鋪墊,現(xiàn)在正式進入語言實際操作和效果展示,該篇文章主要是介紹常用命令與命令的慣常用法;編寫、編譯一般匯編程序;閱讀機器碼。* *注意:本文
    的頭像 發(fā)表于 02-14 15:10 ?982次閱讀
    <b class='flag-5'>匯編</b>學習入門之第<b class='flag-5'>一</b>個<b class='flag-5'>匯編</b>程序