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

正文內(nèi)容

arm處理器編程模型與指令系統(tǒng)-文庫(kù)吧在線文庫(kù)

  

【正文】 R13_irq R13_fiq R14(LR) R14 R14_svc R14_abt R14_und R14_irq R14_fiq R15(PC) R15 狀態(tài)寄存器 CPSR CPSR SPSR 無(wú) SPSR_abt SPSR_abt SPSR_und SPSR_irq SPSR_fiq 鏈接寄存器 R14( LR) R14為 鏈接寄存器 ( LR),在結(jié)構(gòu)上有兩個(gè)特殊功能: ?在每種模式下,模式自身的 R14版本用于保存子程序返回地址; ?當(dāng)發(fā)生異常時(shí),將 R14對(duì)應(yīng)的異常模式版本設(shè)置為異常返回地址(有些異常有一個(gè)小的固定偏移量)。 軟件中斷 ( SWI) 該異常由執(zhí)行 SWI指令產(chǎn)生,可用于用戶模式下的程序調(diào)用特權(quán)操作指令。 ARM的異常 從異常返回 為確保指令總是按正確的操作模式讀取,以保證存儲(chǔ)器保護(hù)方案不被繞過(guò),還有更加微妙的困難。 ARM指令的尋址方式 基址變址尋址 ?變址尋址方式可分為 : ?前變址模式 LDR R0, [R1, 4] ; R0←[R1 + 4] ?自動(dòng)變址模式 LDR R0, [R1, 4]!; R0←[R1 + 4]、 R1←R1 + 4 ?后變址模式 LDR R0, [R1], 4 ; R0←[R1] 、 R1←R1 + 4 ?偏移地址 LDR R0, [R1, R2] ; R0←[R1 + R2] LDR R0, [R1, R2, LSL2] ; R0←[R1 + R2 * 4] ARM指令的尋址方式 多寄存器尋址 ?多寄存器尋址又稱為塊拷貝尋址,是多寄存器傳送指令 Load/Store的尋址方式,Load/Store指令可把存儲(chǔ)器中的一個(gè)數(shù)據(jù)塊加載到多個(gè)寄存器中,也可把多個(gè)寄存器中的內(nèi)容保存到存儲(chǔ)器中。 ?比較指令 不保存運(yùn)算結(jié)果,只更新 CPSR中相應(yīng)的條件標(biāo)志位 。 ?BX:帶狀態(tài)切換的跳轉(zhuǎn)指令。 根據(jù)實(shí)現(xiàn)的功能, Thumb指令可分為四類: 1. 數(shù)據(jù)處理指令; 2. 轉(zhuǎn)移指令; 3. Load/Store指令; 4. 異常中斷指令; Thumb指令及應(yīng)用 Thumb編程模型 Thumb指令集是 ARM指令集的一個(gè)子集,并只能對(duì)限定的 ARM寄存器進(jìn)行操作。 本章小結(jié) ? ARM微處理器的運(yùn)行模式可以通過(guò)軟件改變,也可以通過(guò)外部中斷或異常處理改變 。 本章小結(jié) ? Thumb指令集是 ARM指令集的一個(gè)子集,允許指令編碼為 16位的長(zhǎng)度。在任何時(shí)候,通用寄存器 R14~ R0、程序計(jì)數(shù)器 PC、 1個(gè)或 2個(gè)狀態(tài)寄存器都是可訪問(wèn)的。 Thumb指令及應(yīng)用 Thumb指令集特點(diǎn) Thumb指令繼承了 ARM指令集的許多特點(diǎn)若 T置 1,則認(rèn)為是 16位的 Thumb指令流; Thumb指令集丟棄了 ARM指令集的一些特征; Thumb異常時(shí)表現(xiàn)的一些特點(diǎn)。 ARM指令集 ? 移位操作包括如下 6種類型,其中 ASL和LSL是等價(jià)的,可以自由互換 : LSL:邏輯左移; ASL:算術(shù)左移; LSR:邏輯右移; ASR:算術(shù)右移; ROR:循環(huán)右移; RRX:帶擴(kuò)展的循環(huán)右移 ARM指令集 協(xié)處理器指令 ARM微處理器可支持多達(dá) 16個(gè)協(xié)處理器,用于各種協(xié)處理操作,在程序執(zhí)行的過(guò)程中,每個(gè)協(xié)處理器只執(zhí)行針對(duì)自身的協(xié)處理指令,忽略 ARM處理器和其他協(xié)處理器的指令 。 程序狀態(tài)寄存器訪問(wèn)指令包括以下兩條: ?MRS:程序狀態(tài)寄存器到通用寄存器的數(shù)據(jù)傳送指令; ?MSR:通用寄存器到程序狀態(tài)寄存器的數(shù)據(jù)傳送指令 ARM指令集 加載 /存儲(chǔ)指令 ARM微處理器支持 Load/Store指令用于在寄存器和存儲(chǔ)器之間傳送數(shù)據(jù),加載指令用于將存儲(chǔ)器中的數(shù)據(jù)傳送到寄存器,存儲(chǔ)指令則完成相反的操作。 根據(jù)堆棧的生成方式 ,分為: ?遞增堆棧( Ascending Stack) :堆棧由低地址向高地址生成 ?遞減堆棧( Decending Stack) :堆棧由高地址向低地址生成 ARM指令的尋址方式 堆棧尋址 ARM微處理器支持這四種類型的堆棧工作方式: ?滿遞增堆棧 :堆棧指針指向最后壓入的數(shù)據(jù),且由低地址向高地址生成; ?滿遞減堆棧 :堆棧指針指向最后壓入的數(shù)據(jù),且由高地址向低地址生成; ?空遞增堆棧 :堆棧指針指向下一個(gè)將要放入數(shù)據(jù)的空位置,且由低地址向高地址生成; ?空遞減堆棧 :堆棧指針指向下一個(gè)將要放入數(shù)據(jù)的空位置,且由高地址向低地址生成; ARM指令的尋址方式 堆棧尋址 在 ARM指令中,堆棧尋址也是通過(guò)Load/Store指令來(lái)實(shí)現(xiàn)的,例 如: STMFD SP! {R1R7, LR} ;將 R1~R7, LR入棧 LDMFD SP! {R1R7, LR} ;數(shù)據(jù)出棧,放入 R1~R7, LR寄存器 在 Thumb指令中,堆棧尋址通過(guò) PUSH/POP指令來(lái)實(shí)現(xiàn),例如: PUSH {R1R7, LR} ;將 R1~R7, LR入棧 POP {R1R7, PC} ;數(shù)據(jù)出棧,放入 R1~R7, PC寄存器 ARM指令的尋址方式 相對(duì)尋址 ?與基址變址尋址方式相類似,相對(duì)尋址以程序計(jì)數(shù)器 PC的當(dāng)前值為基地址,指令中的地址標(biāo)號(hào)作為偏移量,將兩者相加之后得到操作數(shù)的有效地址。這個(gè)操作數(shù)被稱為立即數(shù),對(duì)應(yīng)的尋址方式也就叫做立即尋址。 外部中斷請(qǐng)求 ( IRQ) 當(dāng)處理器的外部中斷請(qǐng)求引腳有效,且 CPSR中的 I位為 0時(shí),產(chǎn)生 IRQ異常。這些“不正?!笔录急粍潥w“異?!保?yàn)樵谔幚砥鞯目刂茩C(jī)制中,它們都使用同樣的流程進(jìn)行異常處理。一個(gè)用于用戶和系統(tǒng)模式,其余 5個(gè)分別用于 5種異常模式。 寄存器類別 寄存器在匯編中的名稱 各模式下實(shí)際訪問(wèn)的寄存器 用戶 系統(tǒng) 管理 中止 未定義 中斷 快中斷 通用寄存器和程序計(jì)數(shù)器 R0(a1) R0 R1(a2) R1 R2(a3) R2 R3(a4) R3 R4(v1) R4 R5(v2) R5 R6(v3) R6 R7(v4) R7 R8(v5) R8 R8_fiq R9(SB,v6) R9 R9_fiq R10(SL,v7) R10 R10_fiq R11(FP,v8) R11 R11_fiq R12(IP) R12 R12_fiq R13(SP) R13 R13_svc R13_abt R13_und R13_irq R13_fiq R14(LR) R14 R14_svc R14_abt R14_und R14_irq R14_fiq R15(PC) R15 狀態(tài)寄存器 CPSR CPSR SPSR 無(wú) SPSR_abt SPSR_abt SPSR_und SPSR_irq SPSR_fiq 無(wú) CPSR 用戶無(wú)系統(tǒng)_abt 管理_abt t t 中止 未定義_ir 14_ir 13_ir 中斷_fi 14_fi 13_fi 11_fi 快中斷ARM狀態(tài)各模式下可以訪問(wèn)的寄存器 寄存器類別 寄存器在匯編中的名稱 各模式下實(shí)際訪問(wèn)的寄存器 用戶 系統(tǒng) 管理 中止 未定義 中斷 快中斷 通用寄存器和程序計(jì)數(shù)器 R0(a1) R0 R1(a2) R1 R2(a3) R2 R3(a4) R3 R4(v1) R4 R5(v2) R5 R6(v3) R6 R7(v4) R7 R8(v5) R8 R8_fiq R9(SB,v6) R9 R9_fiq R10(SL,v7) R10 R10_fiq R11(FP,v8) R11 R11_fiq R12(IP) R12 R12_fiq R13(SP) R13 R13_svc R13_abt R13_und R13_irq R13_fiq R14(LR) R14 R14_svc R14_abt R14_und R14_irq R14_fiq R15(PC) R15 狀態(tài)寄存器 CPSR CPSR SPSR 無(wú) SPSR_abt SPSR_abt SPSR_und SPSR_irq SPSR_fiq 一般的通用寄存器 R13_und R13_abt 11_fi 在匯編語(yǔ)言中寄存器 R0~ R13為保存數(shù)據(jù)或地址值的 通用寄存器 。 841 11 0910765323 1 2 4 2 3 1 6 1 5 8 7 0字 地 址840低 地 址高 地 址 ARM體系結(jié)構(gòu)的存儲(chǔ)器格式 ? ARM體系結(jié)構(gòu)可以用兩種方法存儲(chǔ)字?jǐn)?shù)據(jù) ?小端格式 : 與大端存儲(chǔ)格式相反,在小端存儲(chǔ)格式中,低地址中存放的是字?jǐn)?shù)據(jù)的低字節(jié),高地址存放的是字?jǐn)?shù)據(jù)的高字節(jié)。 處理器的工作狀態(tài) 例: 從 ARM狀態(tài)切換到 Thumb狀態(tài): LDR R0,=Label+1 BX R0 從 Thumb狀態(tài)切換到 ARM狀態(tài): LDR R0,=Label BX R0 主要內(nèi)容 ? ARM微處理器的工作狀態(tài) ? ARM微處理器的運(yùn)行模式 ? ARM體系結(jié)構(gòu)的存儲(chǔ)器格式 ? 寄存器組織 ? ARM的異常 ? ARM微處理器的指令系統(tǒng)基礎(chǔ) ? ARM指令的尋址方式 ? ARM指令集 ? Thumb指令及應(yīng)用 ARM微處理器的運(yùn)行模式 ? ARM微處理器支持 7種運(yùn)行模式,分別為: (usr):ARM處理器正常的程序執(zhí)行狀態(tài); (fiq):用于高速數(shù)據(jù)傳輸或通道處理; (irq):用于通用的中斷處理; (supervisor):操作系統(tǒng)使用的保護(hù)
點(diǎn)擊復(fù)制文檔內(nèi)容
語(yǔ)文相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1