最近在除錯uboot的**時,用的新版本的uboot,lowlevel_init函式裡是空的,而且在鏈結檔案中也沒有發現對lowlevel_init.o的鏈結。在bl lowlevel_init 之前和之中加了兩個電燈,發現在bl之後的部分並沒有被執行,所以想看看具體程式有沒有執行這個函式。在網上找反彙編bin檔案的時候發現有朋友提供的方法,很好用。
使用arm-linux 工具鏈裡面的arm-linux-objdump 就能反彙編
cd到bin檔案所在的目錄, 在命令列下輸入:
arm-linux-objdump -d -b binary -m arm ***.bin > ***.asm
引數:-d 反編譯所有**
-m 主機型別, arm
-b 檔案格式, binary
對於elf格式的檔案只要乙個-d引數即可
就可以把***.bin反彙編到***.asm檔案
ARM跳轉指令B的反彙編分析
為說明跳轉指令b的反彙編分析方法,這裡以一段 為例 text global start start b step1 step1 b step1 反彙編 如下 00000000 start 0 eaffffff b 4 4 e59ff000 ldr pc,pc,0 c 8 eafffffe b 8 c...
反彙編檔案( dis檔案)的理解
下面以一段dis檔案中 來簡單理解一下反彙編的讀法 為了方便,部分說明已經解除安裝 塊雙斜槓後面 led.elf file format elf32 littlearm 表明這是由led.elf檔案反彙編得到的dis檔案 檔案格式是elf32位的,且是小端模式存放 disassembly of se...
反彙編windows的exe檔案
使用 peid 0.95 右擊複製rva位址 斷點f4執行到選定處 彙編偽指令db,dw,dd db定義位元組型別變數,乙個位元組資料佔1個位元組單元,讀完乙個,偏移量加1 dw定義字型別變數,乙個字資料佔2個位元組單元,讀完乙個,偏移量加2 dd定義雙字型別變數,乙個雙字資料佔4個位元組單元,讀完...