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

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

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

分享到微博請遵守國家法律
南城县| 丁青县| 陆川县| 牟定县| 杨浦区| 南平市| 辰溪县| 九龙县| 河间市| 建水县| 高安市| 开化县| 修水县| 华宁县| 秦皇岛市| 吉木萨尔县| 桑日县| 邵武市| 余干县| 四平市| 门源| 锦屏县| 三门峡市| 肇源县| 于田县| 思茅市| 广昌县| 阳朔县| 龙泉市| 乌兰县| 沅陵县| 南岸区| 盘山县| 信宜市| 阳东县| 遵化市| 濮阳县| 金塔县| 三明市| 西吉县| 鹤峰县|