關(guān)于嵌入式的指令集和編譯原理

1、MIPS、ARM、RISC-V同屬精簡指令集RISC家族

① MIPS 是“簡潔的老前輩”,教學價值高但商業(yè)活力衰退;

② ARM 是“成熟的商業(yè)霸主”,生態(tài)與性能俱佳,代價是封閉與高授權(quán)費;

③ RISC-V 是“開源的新銳”,以極簡與開放吸引學術(shù)界與初創(chuàng)公司,在 AIoT 與定制芯片領(lǐng)域快速擴張,生態(tài)仍在建設(shè)中。

2、ARM與MIPS指令集對比

3、Thumb指令集

Thumb 指令集是 ARM 體系結(jié)構(gòu)里的一套 16 位指令編碼,可以看作是對標準 32 位 ARM 指令集的“壓縮子集”。

目的:提高代碼密度,讓程序占用更少的存儲空間,并能在數(shù)據(jù)總線只有 16 位寬的低成本系統(tǒng)里高效運行。

長度:每條指令固定 16 位,約為對應 ARM 指令的一半,整體代碼體積可縮減到 ARM 的 60 %~70 %。

功能:保留了常用的數(shù)據(jù)處理、加載/存儲、分支等操作,但做了簡化——例如只允許訪問 R0–R7 這 8 個低位寄存器,多數(shù)指令無條件執(zhí)行,且不支持所有 ARM 指令的特性。

執(zhí)行方式:處理器在 Thumb 狀態(tài)下實時將 16 位指令“解壓”成等效的 32 位 ARM 指令執(zhí)行,無性能損失。

使用場景:嵌入式系統(tǒng)、移動設(shè)備、游戲機等對成本、功耗或存儲空間敏感的場合。

一句話總結(jié):Thumb 就是“瘦身版 ARM 指令”,用 16 位編碼換取更小的代碼體積,適合資源受限的嵌入式平臺。


4、指令的執(zhí)行過程

5、編譯原理

6、編譯器優(yōu)化


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容