日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Cortex M3寄存器组

發布時間:2025/4/5 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Cortex M3寄存器组 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

寄存器組


宗旨:技術的學習是有限的,分享的精神是無限的。


?

1、通用目的寄存器R0~R7

???????? R0-R7 也被稱為低組寄存器。所有指令都能訪問它們。它們的字長全是 32 位,復位后的初始值是不可預料的。

2、通用目的寄存器?R8-R12

? ? ? ? ?R8-R12 也被稱為高組寄存器。這是因為只有很少的 16 位 Thumb 指令能訪問它們, 32 位的thumb-2 指令則不受限制。它們也是 32 位字長,且復位后的初始值是不可預料的。

3、特殊功能寄存器


程序狀態寄存器:APSR, IPSR, EPSR??---- MRS/MSR


APSR:

N:負條件碼標志位,運算結果小于0,N=1, 大于等于0,N=0;

Z:零條件碼標志位,運算結果為0,Z=1;

C:進位條件碼標志位,運算指令產生進位(無符號加法溢出),C=1;

V:溢出條件碼標志位,運算溢出(有符號加法溢出), V=1;

Q:飽和條件碼標志位;

IPSR:處于線程模式時,該位域為0;在手柄模式下,該位域為當前異常的異常號。

EPSR:

T:Thumb狀態, T=1,ARM狀態,T=0;?

PRIMASK, FAULTMASK 和 BASEPRI:控制異常的使能和除能?


控制寄存器CONTROL:其一用于定義特權級別,其二用于選擇當前使用哪個堆棧指針。


4、堆棧指針R13

R13 是堆棧指針。在 CM3 處理器內核中共有兩個堆棧指針,于是也就支持兩個堆棧。當引用 R13(或寫作 SP)時,引用到的是當前正在使用的那一個,另一個必須用特殊的指令來訪問( MRS,MSR指令)。

主堆棧指針(MSP),或寫作 SP_main。這是缺省的堆棧指針,它由 OS 內核、異常服務例程以及所有需要特權訪問的應用程序代碼來使用。

進程堆棧指針(PSP),或寫作 SP_process。用于常規的應用程序代碼(不處于異常服用例程中時)。

5、連接寄存器R14

R14 是連接寄存器( LR)。在一個匯編程序中,你可以把它寫作 both LR 和 R14。 LR 用于在調用子程序時存儲返回地址。例如,當你在使用 BL(分支并連接, Branch and Link)指令時,就自動填充 LR的值。

6、程序計數器R15

R15 是程序計數器,在匯編代碼中一般我們都都叫它的外號“ PC”。因為 CM3 內部使用了指令流水線,讀 PC 時返回的值是當前指令的地址+4。

?

版權聲明:原創不易,轉載請注明出處:http://blog.csdn.net/wqx521

總結

以上是生活随笔為你收集整理的Cortex M3寄存器组的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。