国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

12.3 ARM寄存器組織

這篇具有很好參考價(jià)值的文章主要介紹了12.3 ARM寄存器組織。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

ARM寄存器組織(一)

寄存器

概念

作用

分類

ARM寄存器

ARM寄存器組織(二)

專用寄存器

R15(PC,Program Counter)

R14(LR,Link Register)

R13(SP,Stack Pointer)

ARM寄存器組織(三)

CPSR寄存器


ARM寄存器組織(一)

寄存器
概念

寄存器是處理器內(nèi)部的存儲(chǔ)器,沒有地址

C語言中register存儲(chǔ)在寄存器中,但無法進(jìn)行取地址&因?yàn)闆]有地址,只能修飾局部變量,因?yàn)榧拇嫫鞔鎯?chǔ)空間太少,不能長時(shí)間被占用

作用

一般用于暫時(shí)存放參與運(yùn)算的數(shù)據(jù)和運(yùn)算結(jié)果

12.3 ARM寄存器組織,從零開始學(xué)嵌入式-12.ARM體系結(jié)構(gòu)哦與結(jié)構(gòu)技術(shù),arm開發(fā)

分類

包括通用寄存器、專用寄存器、控制寄存器

ARM寄存器

不同的模式可以使用寄存器的權(quán)限不同

12.3 ARM寄存器組織,從零開始學(xué)嵌入式-12.ARM體系結(jié)構(gòu)哦與結(jié)構(gòu)技術(shù),arm開發(fā)

注 三角表示只能在某個(gè)特定模式下只能使用當(dāng)前模式下的寄存器,一個(gè)模式下特有的寄存器其他模式下不可使用

一共有40個(gè)寄存器

ARM寄存器組織(二)

專用寄存器
R15(PC,Program Counter)

程序計(jì)數(shù)器,用于存儲(chǔ)當(dāng)前取址指令的地址

R14(LR,Link Register)

鏈接寄存器,一般有以下兩種用途:

執(zhí)行跳轉(zhuǎn)指令(BL/BLX)時(shí),LR會(huì)自動(dòng)保存跳轉(zhuǎn)指令下一條指令的地址程序需要返回時(shí)將LR的值復(fù)制到PC即可實(shí)現(xiàn)

產(chǎn)生異常時(shí),對應(yīng)異常模式下的LR會(huì)自動(dòng)保存被異常打斷的指令的下一條指令的地址,異常處理結(jié)束后將LR的值復(fù)制到PC可實(shí)現(xiàn)程序返回

R13(SP,Stack Pointer)

棧指針,用于存儲(chǔ)當(dāng)前模式下的棧頂?shù)刂?/p>

ARM寄存器組織(三)

CPSR寄存器

CPSR(Current Program Status Register),當(dāng)前程序狀態(tài)寄存器

它主要在ARM架構(gòu)中使用,在執(zhí)行程序時(shí)需要頻繁讀取和修改CPSR來進(jìn)行條件判斷、模式切換和中斷處理等操作。

ARM是32位其中寄存器也都是32位12.3 ARM寄存器組織,從零開始學(xué)嵌入式-12.ARM體系結(jié)構(gòu)哦與結(jié)構(gòu)技術(shù),arm開發(fā)

CPSR寄存器分為四個(gè)域,[31:24]為條件域用F表示、[23:16]為狀態(tài)域用S表示、[15:8]為預(yù)留域用X表示、[8:0]為控制域用C表示

Bit[4:0]

[10000]User [10001]FIQ [10010]IRQ [10011]SVC

[10111]Abort [11011]Undef [11111]System [10110]Monitor

Bit[5]

[0]ARM狀態(tài) [1]Thumb狀態(tài)

Bit[6]

[0]開啟FIQ [1]禁止FIQ

Bit[7]

[0]開啟IRQ [1]禁止IRQ

Bit[28]

當(dāng)運(yùn)算器中進(jìn)行加法運(yùn)算且產(chǎn)生符號(hào)位進(jìn)位時(shí)該位自動(dòng)置1,否則為0

當(dāng)運(yùn)算器中進(jìn)行減法運(yùn)算且產(chǎn)生符號(hào)位借位時(shí)該位自動(dòng)置0,否則為1

Bit[29]

當(dāng)運(yùn)算器中進(jìn)行加法運(yùn)算且產(chǎn)生進(jìn)位時(shí)該位自動(dòng)置1,否則為0

當(dāng)運(yùn)算器中進(jìn)行減法運(yùn)算且產(chǎn)生借位時(shí)該位自動(dòng)置0,否則為1

Bit[30]

當(dāng)運(yùn)算器中產(chǎn)生了0的結(jié)果該位自動(dòng)置1,否則為0

Bit[31]

當(dāng)運(yùn)算器中產(chǎn)生了負(fù)數(shù)的結(jié)果該位自動(dòng)置1,否則為0文章來源地址http://www.zghlxwxcb.cn/news/detail-540381.html

到了這里,關(guān)于12.3 ARM寄存器組織的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • ARM 寄存器

    ARM 寄存器

    Cortex A 系列的 ARM 處理器共有 40 個(gè) 32 位寄存器,其中 33 個(gè)為通用寄存器,7 個(gè)為狀態(tài)寄存器。用戶模式和系統(tǒng)模式共用同一組寄存器。 一、未分組寄存器 R0~R7 有些寄存器是所有運(yùn)行模式共用的,如 R0~R7,它們被稱為未分組寄存器。 在所有運(yùn)行模式下,未分組寄存器都指向同

    2024年02月02日
    瀏覽(24)
  • ARM寄存器組

    ARM寄存器組

    CM3 擁有通用寄存器 R0‐R15 以及一些特殊功能寄存器。 R0-R7也被稱為低組寄存器,所有指令可以訪問它們,它們的字長為32位,復(fù)位后的初始值是不可預(yù)料的。 R8-R12也被稱為高組寄存器,所有指令可以訪問它們,它們的字長為32位,復(fù)位后的初始值是不可預(yù)料的。 R13寄存器中

    2024年02月10日
    瀏覽(19)
  • ARM處理器有哪些工作模式和寄存器?各寄存器作用是什么?ARM異常中斷處理流程?

    ARM處理器有哪些工作模式和寄存器?各寄存器作用是什么?ARM異常中斷處理流程?

    快速學(xué)習(xí)嵌入式開發(fā)其他基礎(chǔ)知識(shí)? 返回專欄總目錄 《嵌入式工程師自我修養(yǎng)/C語言》 Tip??:鼠標(biāo)懸停雙虛線/句,可獲得更詳細(xì)的描述 ??ARM處理器有多種工作模式,如下表所示。應(yīng)用程序正常運(yùn)行時(shí),ARM處理器工作在 用戶模式(User mode) ,當(dāng)程序運(yùn)行出錯(cuò)或有中

    2024年02月21日
    瀏覽(567)
  • ARM架構(gòu)(寄存器點(diǎn)燈)

    ARM架構(gòu)(寄存器點(diǎn)燈)

    本篇文章我們來講解一下如何使用寄存器點(diǎn)亮一個(gè)LED燈,一般對于新人來說都是使用HAL庫或者標(biāo)準(zhǔn)庫來操作的,但是學(xué)習(xí)寄存器有助于我們了解更加深入的知識(shí),這加會(huì)提高我們對ARM架構(gòu)的理解。 首先第一步我們需要先找到LED的原理圖,確定對應(yīng)的引腳,然后知道是高電平點(diǎn)

    2024年02月15日
    瀏覽(27)
  • ARM中的寄存器

    ARM中的寄存器

    ARM工作模式 ARM有8個(gè)基本的工作模式 User 非特權(quán)模式,一般在執(zhí)行上層的應(yīng)用程序時(shí)ARM處于該模式 FIQ 當(dāng)一個(gè)高優(yōu)先級中斷產(chǎn)生后ARM將進(jìn)入這種模式 IRQ 當(dāng)一個(gè)低優(yōu)先級中斷產(chǎn)生后ARM將進(jìn)入這種模式 SVC 當(dāng)復(fù)位或執(zhí)行軟中斷指令后ARM將進(jìn)入這種模式 Abort 當(dāng)產(chǎn)生存取異常時(shí)ARM將進(jìn)

    2024年02月03日
    瀏覽(20)
  • ARM編程模型-寄存器組

    ARM編程模型-寄存器組

    Cortex A系列ARM處理器共有40個(gè)32位寄存器,其中33個(gè)為通用寄存器,7個(gè)為狀態(tài)寄存器。usr模式和sys模式共用同一組寄存器。 通用寄存器包括R0~R15,可以分為3類: 未分組寄存器R0~R7 分組寄存器R8~R14、R13(SP) 、R14(LR) 程序計(jì)數(shù)器PC(R15)、R8_fiq-R12_fir為快中斷獨(dú)有 在不同模式下,名稱相同的

    2024年02月10日
    瀏覽(17)
  • ARM匯編寄存器和常用指令詳解

    ARM匯編寄存器和常用指令詳解

    對于32位及其以下的ARM處理器來說,函數(shù)調(diào)用規(guī)則如下: 父函數(shù)與子函數(shù)的入口參數(shù)以此通過 R0~R3 這4個(gè)寄存器傳遞。 父函數(shù)在調(diào)用子函數(shù)前先將子函數(shù)入口參數(shù)存入 R0~R3 寄存器中,若只有一個(gè)入口參數(shù)則使用 R0 寄存器傳遞,若有2個(gè)入口參數(shù)則使用 R0 和 R1 寄存器傳遞,以

    2024年02月03日
    瀏覽(29)
  • 【ARM】——當(dāng)前程序狀態(tài)寄存器 CPSR

    【ARM】——當(dāng)前程序狀態(tài)寄存器 CPSR

    Current Program Status Register 即 CPSR,當(dāng)前程序狀態(tài)寄存器,可以在任何處理器模式下被訪問。它包含了條件標(biāo)志位、中斷禁止位,當(dāng)前處理器模式標(biāo)志以及其他的一些控制和狀態(tài)位。 除了 usr 和 sys 模式外,每一種處理器模式下都有一個(gè)專用的物理寄存器,稱為 SPSR(備份程序狀態(tài)寄

    2024年02月03日
    瀏覽(30)
  • ARM64 寄存器、常用匯編指令收集

    ARM64 有34個(gè)寄存器,包括31個(gè)通用寄存器、SP、PC、CPSR。 寄存器 位數(shù) 描述 x0-x30 64bit 通用寄存器,如果有需要可以當(dāng)做32bit使用:WO-W30 FP(x29) 64bit 保存棧幀地址(棧底指針) LR(x30) 64bit 通常稱X30為程序鏈接寄存器,保存子程序結(jié)束后需要執(zhí)行的下一條指令 SP 64bit 保存棧指針,使用

    2023年04月20日
    瀏覽(31)
  • optee讀取Arm系統(tǒng)寄存器的模板

    optee讀取Arm系統(tǒng)寄存器的模板

    快速鏈接: . ?????? 個(gè)人博客筆記導(dǎo)讀目錄(全部) ?????? 付費(fèi)專欄-付費(fèi)課程 【購買須知】: 【精選】ARMv8/ARMv9架構(gòu)入門到精通-[目錄] ?????? 聯(lián)系方式-加入交流群 ---- 聯(lián)系方式-加入交流群 先寫一個(gè)通用的內(nèi)聯(lián)函數(shù)模板,然后再通過宏控來定義各種讀寫函數(shù)。

    2024年02月12日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包