本週咱們瞭解了在計算機系統中程序的機器級表示。經過反彙編器能夠將機器碼轉化爲相似彙編代碼的格式,而該章節內容的主要介紹了在x86-64中的彙編指令以及彙編指令與c代碼之間的轉化。雖然一樣是彙編,但與咱們上學期學習的8086中的彙編語句有着必定的區別,如下是本章節須要注意的內容:html
objdump -d 文件名+後綴
能夠將機器碼轉化爲彙編代碼,這是進行分析的重要前提條件。因爲有上學期8086下彙編的基礎,對於教材內容的理解並無問題,只是須要注意x86-64彙編語言與8086彙編細節部分的區別,並熟悉x86-64中修改以及添加的概念以及指令。vim
主要是練習將生成的.s彙編文件經過vim進行查看,並經過objdump命令來將.o文件進行反彙編,運行結果如圖:
安全
問題一:
問題一解析:字符串與字符,ascii碼與字符要區分清楚。學習
本週內容的重點是如何看懂由機器碼反編譯而來的基於x86-64的彙編代碼,在學習過程當中能夠參考8086中的彙編語言,這能夠必定程度上減輕咱們的負擔,但必定要注意與8086的區別,不能夠用舊有的思惟方式看待x86-64中的問題。雖然能夠經過之前的內容來方便咱們的理解,但實際上本章的內容仍然十分繁瑣,須要咱們有必定的耐心。編碼
博客量(新增/累積) | 學習時間(新增/累積) | 重要成長 | ||
---|---|---|---|---|
目標 | 30篇 | 400小時 | ||
第一週 | 1/1 | 13/13 | ||
第二週 | 1/2 | 22/35 | ||
第三週 | 1/3 | 30/65 |
嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進本身的計劃能力。這個工做學習中很重要,也頗有用。 耗時估計的公式 :Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。設計
參考:軟件工程軟件的估計爲何這麼難,軟件工程 估計方法指針