嵌入式Linux objdump命令的使用

2022-08-17 01:45:15 字數 1165 閱讀 1674

objdump命令的使用

objdump命令是linux下的反彙編目標檔案或者可執行檔案的命令,它還有其他作用,下面以elf格式可執行檔案test為例詳細介紹:

objdump -f test

顯示test的檔案頭資訊

objdump -d test

反彙編test中的需要執行指令的那些section

objdump -d test

與-d類似,但反彙編test中的所有section

objdump -h test

顯示test的section header資訊

objdump -x test

顯示test的全部header資訊

objdump -s test

除了顯示test的全部header資訊,還顯示他們對應的十六進製制檔案**

舉例:

將c源**和反彙編出來的指令對照:

1.編譯成目標檔案(要加-g選項)

gcc -g -o test.c

2.輸出c源**和反彙編出來的指令對照的格式

objdump -s test.o

如下:

如何對任意乙個二進位制檔案進行反彙編?

我們可以這樣做:

objdump -d -b binary -m i386 a.bin

-d表示對全部檔案進行反彙編,-b表示二進位制,-m表示指令集架構,a.bin就是我們要反彙編的二進位制檔案

objdump -m

另外上面的所有objdump命令的引數同樣適用於arm-linux-objdump。

同時我們也可以指定big-endian或little-endian(-eb或-el),我們可以指定從某乙個位置開始反彙編等。所以objdump命令是非常強大的!

完成!

初識嵌入式 嵌入式開發概述

1 什麼是嵌入式技術 1 嵌入式軟體與非嵌入式軟體的區別?答 嵌入式軟體是結合作業系統之上做的開發 非嵌入式軟體是做的裸機開發。裸機 沒有作業系統 2 嵌入式開發與微控制器開發的區別?答 區別 是否有作業系統。拓展 答 優點 解決了軟體的移植性 解決了開發人員的能力的劃分問題。提供了豐富的網路協議 ...

如何學習嵌入式 嵌入式如何入門?

學習嵌入式,該學習什麼基本的知識呢?嵌入式如何入門?其次,應該對作業系統有所了解,這對你對硬體和軟體的理解,絕對有很大的幫助。應該把系統的管理理解一下,比如程序 執行緒,系統如何來分配資源的,系統如何來管理硬體的,當然,不是看書就能把這些理解透,如果不是一時能理解,沒關係,多看看,結合以後的專案經驗...

非嵌入式與嵌入式的區別

非嵌入式是通過軟體控制硬體,軟硬體之間直接聯絡來實現要求。但是一旦硬體發生改變軟體也要改變,為了降低這種偶合度過高的問題,出現了嵌入式。嵌入式在軟體和硬體之間新增了作業系統,軟體通過控制作業系統進而控制硬體,硬體發生改變並不會導致軟體也發生改變,這為軟體開發人員節約了很多時間,並且嵌入式能在已有的硬...