国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網 會員登陸 & 注冊

14.3異常與中斷_Thumb指令集程序示例

2020-08-27 15:22 作者:韋東山  | 我要投稿

在上節(jié)視頻里說ARMCPU有兩種狀態(tài)

ARM State 每條指令會占據4byte

Thumb State 每條指令占據2byte


我們說過Thumb指令集并不重要,本節(jié)演示把一個程序使用Thumb指令集來編譯它

使用上一章節(jié)的重定位代碼,打開Makefile和Start.S

Makefile文件?

對于使用Thumb指令集?

改進

對start.S需要修改代碼

原重定位章節(jié)Start.S文件?

使用thumb指令集的Start.S文件?

上傳代碼編譯測試

出現錯誤,如下?

發(fā)現是init,o里sdram_init2使用的了memcpy函數

查看init.c?

文章說沒有什么方法禁用memecpy但是可以修改這些變量

比如說將其修改為靜態(tài)變量,這些數據就會放在數據段中,最終重定位時會把數據類拷貝到對應的arr地址里面去?

拷貝進行實驗

得出bin文件有1.4k左右

查看之前的文件使用ARM指令集是2K左右

查看反匯編代碼?

如果你的flash很小的話可以考慮使用Thumb指令集


燒寫進去看是否可以運行

測試結果沒有任何問題

Thumb指令集后面沒有任何作用,只是簡單作為介紹?


14.3異常與中斷_Thumb指令集程序示例的評論 (共 條)

分享到微博請遵守國家法律
呼玛县| 宜宾县| 聊城市| 涞源县| 蕲春县| 金平| 巴彦淖尔市| 水城县| 五指山市| 郎溪县| 苏尼特右旗| 西盟| 石阡县| 赤壁市| 香格里拉县| 乌拉特后旗| 香河县| 金昌市| 惠东县| 武川县| 长顺县| 莱西市| 建水县| 仙游县| 吴旗县| 都昌县| 城固县| 天水市| 东平县| 伊宁市| 武夷山市| 杂多县| 郎溪县| 凤阳县| 天全县| 玉田县| 保靖县| 合水县| 武川县| 安阳市| 广元市|