freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

arm概述及其編程模型(編輯修改稿)

2025-06-08 13:57 本頁面
 

【文章內(nèi)容簡介】 儲(chǔ)字?jǐn)?shù)據(jù),稱之為大端格式 (Big endian)和小端格式 (Little endian) ARM 原理與應(yīng)用 ARM體系結(jié)構(gòu)的存儲(chǔ)器格式 —大端格式 Big endian ? 在這種格式中,字?jǐn)?shù)據(jù)的高字節(jié)存儲(chǔ)在低地址中,而字?jǐn)?shù)據(jù)的低字節(jié)則存放在高地址中 ARM 原理與應(yīng)用 ARM體系結(jié)構(gòu)的存儲(chǔ)器格式 —小端格式 Little endian ? 與大端存儲(chǔ)格式相反,在小端存儲(chǔ)格式中,低地址中存放的是字?jǐn)?shù)據(jù)的低字節(jié),高地址存放的是字?jǐn)?shù)據(jù)的高字節(jié) ARM 原理與應(yīng)用 指令長度及數(shù)據(jù)類型 ?ARM微處理器的指令長度可以是 32位(在 ARM狀態(tài)下),也可以為 16位(在 Thumb狀態(tài)下)。 ARM微處理器的存儲(chǔ)器格式 ?ARM微處理器中支持字節(jié)( 8位)、半字( 16位)、字( 32位)三種數(shù)據(jù)類型,其中,字需要 4字節(jié)對(duì)齊(地址的低兩位為 0)、半字需要 2字節(jié)對(duì)齊(地址的最低位為 0) ARM 原理與應(yīng)用 非對(duì)齊的存儲(chǔ)訪問操作 ?在 ARM中,如果存儲(chǔ)單元的地址沒有遵守對(duì)齊規(guī)則,則稱為非對(duì)齊的存儲(chǔ)訪問操作。 ARM微處理器的存儲(chǔ)器格式 ?非對(duì)齊的指令預(yù)取操作 ?非對(duì)齊的數(shù)據(jù)訪問操作 ARM 原理與應(yīng)用 非對(duì)齊的指令預(yù)取操作 ?當(dāng)處理器處于 ARM狀態(tài)期間,如果寫入到寄存器 PC中的值是非字對(duì)齊的,要么指令執(zhí)行的結(jié)果不可預(yù)知,要么地址值中最低兩位被忽略。 ARM微處理器的存儲(chǔ)器格式 ?當(dāng)處理器處于 THUMB狀態(tài)期間,如果寫入到寄存器 PC中的值是非半字對(duì)齊的,要么指令執(zhí)行的結(jié)果不可預(yù)知,要么地址值中最低位被忽略。 ARM 原理與應(yīng)用 非對(duì)齊的數(shù)據(jù)訪問操作 ?對(duì)于 Load/Store操作,如果是非對(duì)齊的數(shù)據(jù)訪問操作,系統(tǒng)定義了三種可能的結(jié)果: ARM微處理器的存儲(chǔ)器格式 ?執(zhí)行的結(jié)果不可預(yù)知 ?忽略字單元地址的低兩位的值,即訪問地址為(address AND 0XFFFFFFFC)的字單元;忽略半字單元地址的最低位的值,即訪問地址為 (address AND 0XFFFFFFFE)的半字單元。 ?忽略字單元地址的低兩位的值;忽略半字單元地址的最低位的值;由存儲(chǔ)系統(tǒng)實(shí)現(xiàn)這種忽略。也就是說,這時(shí)該地址值原封不動(dòng)地送到存儲(chǔ)系統(tǒng)。 ?當(dāng)發(fā)生非對(duì)齊地?cái)?shù)據(jù)訪問時(shí),到底采用上述三種方法中的哪一種,是由各指令指定的。 ARM 原理與應(yīng)用 寄存器組織 ARM微處理器共有 37個(gè) 32位寄存器,其中 31個(gè)為通用寄存器, 6個(gè)為狀態(tài)寄存器。但是這些寄存器不能被同時(shí)訪問,具體哪些寄存器是可編程訪問的,取決微處理器的工作狀態(tài)及具體的運(yùn)行模式。但在任何時(shí)候,通用寄存器 R14~ R0、程序計(jì)數(shù)器 PC、一個(gè)或兩個(gè)狀態(tài)寄存器都是可訪問的。 ARM微處理器的寄存器格式 ARM 原理與應(yīng)用 ARM狀態(tài)下的寄存器組織 ? 通用寄存器:通用寄存器包括 R0~ R15,可以分為三類: ?未分組寄存器 R0~ R7 ?分組寄存器 R8~ R14 ?程序計(jì)數(shù)器 PC(R15) ARM微處理器的寄存器格式 ARM 原理與應(yīng)用 ARM狀態(tài)下的寄存器組織 ARM微處理器的寄存器格式 ARM 原理與應(yīng)用 未分組寄存器 R0~ R7 ARM微處理器的寄存器格式 ? 在所有的運(yùn)行模式下,未分組寄存器都指向同一個(gè)物理寄存器,他們未被系統(tǒng)用作特殊的用途,因此,在中斷或異常處理進(jìn)行運(yùn)行模式轉(zhuǎn)換時(shí),由于不同的處理器運(yùn)行模式均使用相同的物理寄存器,可能會(huì)造成寄存器中數(shù)據(jù)的破壞,這一點(diǎn)在進(jìn)行程序設(shè)計(jì)時(shí)應(yīng)引起注意。 ARM 原理與應(yīng)用 分組寄存器 R8~ R12 ARM微處理器的寄存器格式 ? 每次所訪問的物理寄存器與處理器當(dāng)前的運(yùn)行模式有關(guān) ? R8~ R12:每個(gè)寄存器對(duì)應(yīng)兩個(gè)不同的物理寄存器 ? 當(dāng)使用 fiq模式時(shí),訪問寄存器 R8_fiq~ R12_fiq; ? 當(dāng)使用除 fiq模式以外的其他模式時(shí),訪問寄存器R8_usr~ R12_usr。 ARM 原理與應(yīng)用 分組寄存器 R13~ R14 ARM微處理器的寄存器格式 ? R1 R14:每個(gè)寄存器對(duì)應(yīng) 6個(gè)不同的物理寄存器 ? 其中的一個(gè)是用戶模式與系統(tǒng)模式共用,另外 5個(gè)物理寄存器對(duì)應(yīng)于其他 5種不同的運(yùn)行模式 ? 采用以下的記號(hào)來區(qū)分不同的物理寄存器: ? R13_mode ? R14_mode ? mode為以下幾種之一: usr、 fiq、 irq、 svc、 abt、 und。 ARM 原理與應(yīng)用 ARM狀態(tài)下的寄存器組織 ARM微處理器的寄存器格式 ARM 原理與應(yīng)用 堆棧指針 — R13 ARM微處理器的寄存器格式 ? R13在 ARM指令中常用作堆棧指針,但這只是一種習(xí)慣用法,用戶也可使用其他的寄存器作為堆棧指針。 ? 在 Thumb指令集中,某些指令強(qiáng)制性的要求使用 R13作為堆棧指針。 ? 由于處理器的每種運(yùn)行模式均有自己獨(dú)立的物理寄存器R13,在初始化部分,都要初始化每種模式下的 R13,這樣,當(dāng)程序的運(yùn)行進(jìn)入異常模式時(shí),可以將需要保護(hù)的寄存器放入 R13所指向的堆棧,而當(dāng)程序從異常模式返回時(shí),則從對(duì)應(yīng)的堆棧中恢復(fù)。 ARM 原理與應(yīng)用 子程序連接寄存器 — R14 ARM微處理器的寄存器格式 ? R14也稱作子程序連接寄存器或連接寄存器 LR。其他情況下, R14用作通用寄存器。 ? 在每一種運(yùn)行模式下,都可用 R14保存子程序的返回地址,當(dāng)用 BL或 BLX指令調(diào)用子程序時(shí),將下條指令的地址拷貝給 R14,執(zhí)行完子程序后,又將 R14的值拷貝回 PC,即可完成子程序的調(diào)用返回。 BL SUB1 …… SUB1 STMFD SP!, {regs, LR} /*將 R14存入堆棧 */ …… LDMFD SP! , {regs,PC}/*完成子程序返回 */ ARM 原理與應(yīng)用 程序計(jì)數(shù)器 PC(R15) ARM微處理器的寄存器格式 ? ARM狀態(tài)下,位 [1:0]為 0,位 [31:2]用于保存 PC; ? Thumb狀態(tài)下,位 [0]為 0,位 [31:1]用于保存 PC; ? R15雖然也可用作通用寄存器,但一般不這么使用,因?yàn)閷?duì) R15的使用有一些特殊的限制,當(dāng)違反了這些限制時(shí),程序的執(zhí)行結(jié)果是未知的。 ? 由于 ARM體系結(jié)構(gòu)采用了多級(jí)流水線技術(shù) , 對(duì)于 ARM指令集而言 , PC總是指向當(dāng)前指令的下兩條指令的地址 ,即 PC的值為當(dāng)前指令的地址值加 8個(gè)字節(jié) 。 ARM 原理與應(yīng)用 程序狀態(tài)寄存器 (CPSR/SPSR) 寄存器 R16用作 CPSR(當(dāng)前程序狀態(tài)寄存器 ), CPSR可在任何運(yùn) 行模式下被訪問,它包括條件標(biāo)志 位、中斷禁止位、當(dāng)前處理器模式標(biāo)志位,以及其 他一些相關(guān)的控制和狀態(tài)位。 ARM微處理器的寄存器格式 每一種運(yùn)行模式下又都有一個(gè)專用的物理狀態(tài) 寄存器,稱為 SPSR(備份的程序狀態(tài)寄存器),異 常發(fā)生時(shí), SPSR用于保存 CPSR的值,從異常退出時(shí) 則可由 SPSR來恢復(fù) CPSR。 ARM 原理與應(yīng)用 程序狀態(tài)寄存器 (CPSR/SPSR) ARM微處理器的寄存器格式 ?由于用戶模式和系統(tǒng)模式不屬于異常模式,他們沒有 SPSR,當(dāng)在這兩種模式下訪問 SPSR,結(jié)果是未知的 。 ARM 原理與應(yīng)用 Thumb狀態(tài)下的寄存器組織 Thumb狀態(tài)下的寄存器集是 ARM狀態(tài)下寄存器集的一個(gè)子集 ARM微處理器的寄存器格式 ? 程序可以直接訪問 8個(gè)通用寄存器( R7~ R0)、程序計(jì)數(shù)器( PC)、堆棧指針( SP)、連接寄存器( LR)和 CPSR。 ? 同樣
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1