<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > ARM微處理器的編程模型之:ARM寄存器組織

ARM微處理器的編程模型之:ARM寄存器組織

作者: 時(shí)間:2013-09-13 來(lái)源:網(wǎng)絡(luò ) 收藏

本文引用地址:http://dyxdggzs.com/article/257086.htm

【例3.2】

使用SUBS指令從寄存器r1中減去常量1,然后把結果寫(xiě)回到r1,其中CPSR的Z位將受到影響。

指令執行前:

CPSR中Z=0

r1=0x00000001

SUBS r1,r1,#1

SUB指令執行結束后:

r1=0x0

CPSR中Z=1

目的寄存器是r15的帶“位設置”的算術(shù)和邏輯運算指令,也可以將SPSR的值復制到CPSR中,這種操作主要用于從異常中斷程序中返回。

用MSR指令向CPSR/SPSR寫(xiě)進(jìn)新值。

目的寄存器位r15的MRC協(xié)處理器指令通過(guò)這條指令可以將協(xié)處理器產(chǎn)生的條件標志位的值傳送到處理器。

在中斷返回時(shí),使用LDR指令的變種指令可以將SPSR的值復制到CPSR中。

2.Q標志位

在帶DSP指令擴展的 v5及更高版本中,bit[27]被指定用于指示增強的DAP指令是否發(fā)生了溢出,因此也就被稱(chēng)為Q標志位。同樣,在SPSR中bit[27]也被稱(chēng)為Q標志位,用于在異常中斷發(fā)生時(shí)保存和恢復CPSR中的Q標志位。

v5以前的版本及ARM v5的非E系列處理器中,Q標志位沒(méi)有被定義。屬于待擴展的位。

3.控制位

CPSR的低8位(I、F、T及M[4∶0])統稱(chēng)為控制位。當異常發(fā)生時(shí),這些位的值將發(fā)生相應的變化。另外,如果在特權模式下,也可以通過(guò)軟件編程來(lái)修改這些位的值。

① 中斷禁止位

I=1,IRQ被禁止。

F=1,FIQ被禁止。

② 狀態(tài)控制位

T位是處理器的狀態(tài)控制位。

T=0,處理器處于A(yíng)RM狀態(tài)(即正在執行32位的ARM指令)。

T=1,處理器處于Thumb狀態(tài)(即正在執行16位的Thumb指令)。

當然,T位只有在T系列的ARM處理器上才有效,在非T系列的ARM版本中,T位將始終為0。

③ 模式控制位

M[4∶0]作為位模式控制位,這些位的組合確定了處理器處于哪種狀態(tài)。表3.3列出了其具體含義。

只有表中列出的組合是有效的,其他組合無(wú)效。

表3.3 狀態(tài)控制位M[4∶0]

M[4∶0]

處理器模式

可以訪(fǎng)問(wèn)的寄存器

0b10000

User

PC,r14~r0,CPSR

0b10001

FIQ

PC,r14_fiq~r8_fiq,r7~r0,CPSR,SPSR_fiq

0b10010

IRQ

PC,r14_irq~r13_irq,r12~r0,CPSR,SPSR_irq

0b10011

Supervisor

PC,r14_svc~r13_svc,r12~r0,CPSR,SPSR_svc

0b10111

Abort

PC,r14_abt~r13_abt,r12~r0,CPSR,SPSR_abt

0b11011

Undefined

PC,r14_und~r13_und,r12~r0,CPSR,SPSR_und

0b11111

System

PC,r14~r0,CPSR(ARM v4及更高版本)

注意

由于用戶(hù)模式(User)和系統模式(System)是非異常模式,所以沒(méi)有單獨的SPSR保存程序狀態(tài)字。在用戶(hù)模式或系統模式下,讀SPSR將返回一個(gè)不可預知的值,而寫(xiě)SPSR將被忽略。

塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理

上一頁(yè) 1 2 3 4 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>