2 ARM 指令集 學習筆記

2021-09-24 22:33:23 字數 484 閱讀 2317

2.指令集

32位的arm指令集,對應處理器狀態是arm

16位thumb指令集,對應處理器是thumb狀態

不同的指令集對應不同的處理器的狀態,在執行過程種,處理器可以動態的切換兩種狀態,但是可以發現,thumb是arm的乙個子集,但是他能帶來更高的**密度。

這是乙個突破性的指令,thumb-2是thumb的乙個超集,是乙個16位指令和32位指令的首次集合,所以在thumb模式下的處理器就豐富多了,同時工作的需要的指令週期明顯也下降了。如圖便是thumb和thumb2的關係。

在cortex-m3,沒有使用arm指令集,而是使用了thumb-2的指令集,

ARM彙編指令集2

常用arm指令1 資料處理指令 資料傳輸指令 mov mov r1,r2 mov r1,0xff01 mvnmvn和mov用法是一樣的,區別是mov是原封不動的傳遞,而mvn是按位取反後傳遞 如r1 0xff,然後mov r0,r1後,r0 0xff,但 mvn r0,r1時,r0 0xffffff...

ARM 指令集學習記錄

通用暫存器和狀態暫存器。通用暫存器包括r0 r15,可分為三類,未分組暫存器,分組暫存器及程式計數器。未分組暫存器 r0 r7,儲存資料或位址。分組暫存器 r8 r14,其中r8 r12對應兩個物理暫存器,r13 r14對應多個。r13常用作堆疊指標。r14稱作程式連線暫存器,lr 程式暫存器 pc...

ARM 指令集 比較指令

譯註 cmp 和 cmp 是算術指令,teq 和 tst 是邏輯指令。把它們歸入一類的原因是它們的 s 位總是設定的,就是說,它們總是影響標誌位。compare negative cmn status op 1 op 2 cmn同於cmp,但它允許你與小負值 運算元 2 的取負的值 進行比較,比如難...