最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

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

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指令集程序示例的評論 (共 條)

分享到微博請遵守國家法律
龙山县| 石楼县| 正定县| 广饶县| 冷水江市| 韶山市| 克山县| 且末县| 德钦县| 阿拉善盟| 临城县| 乡宁县| 公安县| 轮台县| 旺苍县| 定安县| 八宿县| 德化县| 乌拉特中旗| 荣成市| 牡丹江市| 贺州市| 遂昌县| 南乐县| 甘肃省| 绥滨县| 苍南县| 云梦县| 赣榆县| 叙永县| 邹城市| 凌源市| 榆社县| 镇安县| 淮滨县| 霍林郭勒市| 唐山市| 刚察县| 嘉鱼县| 方山县| 特克斯县|