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

正文內(nèi)容

arm體系結(jié)構(gòu)(ppt76頁(yè))-資料下載頁(yè)

2025-03-09 12:37本頁(yè)面
  

【正文】 堆棧指針 (SP) 連接寄存器 (LR) 程序計(jì)數(shù)器 (PC) 當(dāng)前程序狀態(tài)寄存器 被保存程序狀態(tài)寄存器 堆棧指針 (R13) 連接寄存器 (R14) 程序計(jì)數(shù)器 (R15) 當(dāng)前程序狀態(tài)寄存器 被保存程序狀態(tài)寄存器 R1 R2 R3 R4 R5 R6 R7 R8 R9 R10 R11 R12 R0 堆棧指針 (R13) 連接寄存器 (R14) 程序計(jì)數(shù)器 (R15) 低寄存器 高寄存器 注意 :在發(fā)生異常時(shí),處理器自動(dòng)進(jìn)入 ARM狀態(tài)。 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 56 處理器模式與寄存器的關(guān)系 異常發(fā)生時(shí)伴隨的模式切換意味著 , 被調(diào)用的異常處理程序會(huì)訪問(wèn): ? 它自己的堆棧指針 (SP_mode) ? 它自己的鏈接寄存器 (LR_mode) ? 它自己的備份程序狀態(tài)寄存器 (SPSR_mode) ? 如果是 FIQ異常處理 , 5個(gè)其它的通用狀態(tài)寄存器 (r8_FIQ to r12_FIQ) ? 其它寄存器和原來(lái)模式下的寄存器是相同的 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 57 – 通用寄存器 通用寄存器是 R0R15的寄存器 , 分為三類(lèi) ? 沒(méi)有對(duì)應(yīng)影子寄存器的寄存器 R0R7 ? 有對(duì)應(yīng)影子寄存器的寄存器 R8R14 ? 程序計(jì)數(shù)器 R15 (或者 PC) 影子寄存器 是指該寄存器在不同的模式下對(duì)應(yīng)的物理寄存器 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 58 – 通用寄存器 R0R7 ? 所有模式下 , R0R7所對(duì)應(yīng)的 物理寄存器 都是相同的 ? 這八個(gè)寄存器是真正意義上的通用寄存器 ,ARM體系結(jié)構(gòu)中對(duì)它們沒(méi)有作任何特殊的假設(shè) ,它們的功能都是等同的 。 ? 在中斷或者異常處理程序中一般都需要對(duì)這幾個(gè)寄存器進(jìn)行保存 。 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 59 – 通用寄存器 R8R14 ? 訪問(wèn)的物理寄存器取決于當(dāng)前的處理器模式 , 若要訪問(wèn)特定的物理寄存器而不依賴(lài)當(dāng)前的處理器模式 , 則要使用規(guī)定的名字 。 ? R8R12各有兩組物理寄存器:一組為 FIQ模式 , 另一組是除 FIQ以外的其他模式 。 ? R13R14各有 6個(gè)分組的物理寄存器 , 一個(gè)用于用戶(hù)模式和系統(tǒng)模式 , 其他 5個(gè)分別用于 5種異常模式 。 ? R13( 也被稱(chēng)為 SP指針 ) 被用作 棧指針 , 通常在系統(tǒng)初始化時(shí)需要對(duì)所有模式下的 SP指針賦值 , 當(dāng) CPU在不同的模式時(shí)棧指針會(huì)被自動(dòng)切換成相應(yīng)模式下的值 。 ? R14有兩個(gè)用途 , 一是在 調(diào)用子程序時(shí)用于保存調(diào)用返回地址 , 二是在 發(fā)生異常時(shí)用于保存異常返回地址 。 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 60 不同模式下堆棧指針的初始化 在系統(tǒng)初始化(即系統(tǒng)復(fù)位)時(shí)需要初始化各模式分組的堆棧指針寄存器 R13( R13_svc、 R13_irq、 R13_fiq、 R13_abt和R13_und ),這樣才能在進(jìn)入不同的模式時(shí)自動(dòng)切換使用不同的堆??臻g。初始化時(shí)需注意 堆棧指針必須保持 8字節(jié)對(duì)齊。 ; 中斷模式堆棧的設(shè)置 (涉及到 CPSR格式和 MSR指令 ) MSR CPSR_c, 0x000000D2 ; 切換到中斷模式 LDR R1, = IrqStack MOV SP, R1 ; 設(shè)置中斷模式堆棧指針 ;快速中斷模式堆棧的設(shè)置 MSR CPSR_c, 0x000000D1 ; 切換到快速中斷模式 LDR R1, = FiqStack MOV SP, R1 ; 設(shè)置快速中斷模式堆棧指針 ;中止模式堆棧的設(shè)置 ...... 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 61 鏈接寄存器 R14( LR) 1 R14為 鏈接寄存器 ( LR),在結(jié)構(gòu)上有兩個(gè)特殊功能: ?在每種模式下,模式自身的 R14版本用于保存子程序返回地址; ?當(dāng)發(fā)生異常時(shí),將 R14對(duì)應(yīng)的異常模式版本設(shè)置為異常返回地址(有些異常有一個(gè)小的固定偏移量)。 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 62 鏈接寄存器 R142 Lable 程序 A 程序 B R14 R14寄存器與子程序調(diào)用 BL Lable 地址 A ??? MOV PC,LR R14(地址 A) ??? A執(zhí)行過(guò)程中調(diào)用程序 B; 操作流程 Lable,執(zhí)行程序 B。同時(shí)硬件將 “ BL Lable”指令的下一條指令所在地址存入 R14; B執(zhí)行最后,將 R14寄存器的內(nèi)容放入 PC,返回程序 A; 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 63 鏈接寄存器 R143 R14寄存器與異常發(fā)生 異常發(fā)生時(shí),程序要跳轉(zhuǎn)至異常服務(wù)程序,對(duì)返回地址的處理與子程序調(diào)用類(lèi)似,都是由硬件完成的。區(qū)別在于有些異常有一個(gè)小常量的偏移。 R14寄存器注意要點(diǎn) 當(dāng)發(fā)生異常嵌套時(shí),這些異常之間可能會(huì)發(fā)生沖突。 例如:如果用戶(hù)在用戶(hù)模式下執(zhí)行程序時(shí)發(fā)生了 IRQ中斷,用戶(hù)模式寄存器不會(huì)被破壞。但是如果允許在 IRQ模式下的中斷處理程序重新使能 IRQ中斷,并且發(fā)生了嵌套的 IRQ中斷時(shí),外部中斷處理程序保存在 R14_irq中的任何值都將被嵌套中斷的返回地址所覆蓋。 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 64 鏈接寄存器 R144 R14寄存器注意要點(diǎn) R14 R14_irq 用戶(hù)模式下的程序 IRQ模式下的程序 A a return B ... X A 地址 A 地址 A 下的程序; IRQ中斷,硬件將某個(gè)地址存入 IRQ模式下的 R14_irq寄存器, 用戶(hù)模式下的R14沒(méi)有被破壞; 3. IRQ服務(wù)程序 A執(zhí)行完畢,將R14_irq寄存器的內(nèi)容減去某個(gè)常量后存入 PC,返回之前被中斷的程序; 未被破壞 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 65 鏈接寄存器 R144 R14寄存器注意要點(diǎn) R14 R14_irq 用戶(hù)模式下的程序 IRQ模式下的程序 A a B ... X A 地址 A 地址 A 下的程序; IRQ中斷,硬件將某個(gè)地址存入 IRQ模式下的 R14_irq寄存器, 用戶(hù)模式下的R14沒(méi)有被破壞; 3. IRQ服務(wù)程序 A執(zhí)行完畢,將R14_irq寄存器的內(nèi)容減去某個(gè)常量后存入 PC,返回之前被中斷的程序; 未被破壞 IRQ模式下的程序 B a return B ... X A 地址 B 地址 B4. 如果在 IRQ處理程序中打開(kāi)IRQ中斷,并且再次發(fā)生 IRQ中斷,或者調(diào)用子程序; 5. 硬件將返回地址保存在 R14_irq寄存器中, 原來(lái)保存的返回地址將被覆蓋,造成錯(cuò)誤 ;被破壞 6. 在程序 B返回到程序 A,然后在返回到用戶(hù)模式下被中斷的程序時(shí),發(fā)生錯(cuò)誤,將不能正確返回; return 解決辦法是確保 R14的對(duì)應(yīng)版本在發(fā)生中斷嵌套時(shí)不再保存任何有意義的值(將 R14入棧),或者切換到其它處理器模式下。 第 2章 ARM體系結(jié)構(gòu) 成于大氣 信達(dá)天下 Copyright2023lsh Chengdu University of Information Technology 66 – 通用寄存器 R15 ? 用作程序計(jì)數(shù)器 (PC), 可以被讀寫(xiě) 讀到的 PC的值是 PC當(dāng)前值加 8( 2個(gè)指令的長(zhǎng)度 ,三級(jí)流水線情況下 ) , 寫(xiě) PC則轉(zhuǎn)移到寫(xiě)入地址執(zhí)行程序 。 ? ARM state:4字節(jié)對(duì)齊,最低兩位 bits [1:0]永遠(yuǎn)為0( V4以上版本, V3以下是把寫(xiě)入值與0XFFFFFFFC與操作) ? THUMB state: 2字節(jié)對(duì)齊,最低位 bit [0]為 0 注: ARM存儲(chǔ)器按字節(jié)組織
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1