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

正文內(nèi)容

[教育學(xué)]第三章arm指令系統(tǒng)-在線瀏覽

2025-03-10 13:10本頁面
  

【正文】 : STR r0,[r1],12 三、偏移地址形式 ——可以是一個(gè)立即數(shù) , 也可以是另一個(gè)寄存器 , 并且還可以是寄存器移位操作 。 堆棧尋址 堆棧尋址 ——堆棧尋址是隱含的,它使用一個(gè)專門的寄存器(堆棧指針 SP)指向一塊存儲(chǔ)區(qū)域 (堆棧 )。 向下生長(zhǎng): 向低地址方向生長(zhǎng),稱為 遞減堆棧 。 這樣就有 4種類型的堆棧表示遞增和遞減的滿和空堆棧的各種組合。 ? 滿遞減堆棧 FD: ——堆棧指針指向最后壓入的數(shù)據(jù) , 且由高地址向低地址生長(zhǎng) 。 ? 空遞減堆棧 ED( Empty Descending ) : ——堆棧指針指向下一個(gè)將要放入數(shù)據(jù)的空位置 ,且由高地址向低地址生長(zhǎng) 。 應(yīng)用指令: 塊拷貝尋址是多寄存器傳送指令 LDM/STM的尋址方式 , 因此 也叫多寄存器尋址 。 二、 4種尋址操作 LDMIA / STMIA Increment After(先傳送,后地址加4) LDMIB / STMIB Increment Before(先地址加 4 ,后傳送 ) LDMDA / STMDA Decrement After(先傳送,后地址減4) LDMDB / STMDB Decrement Before (先地址減 4,后傳送 ) IA r1 地址 增加 r4 r0 r1 r4 r0 r1 r4 r0 r1 r4 r0 r10 IB DA DB STMxx r10, {r0,r1,r4} 基址寄存器 (Rn) 地址遞減,指針最后位置 地址遞增,指針最后位置 棧生長(zhǎng) 地址 頂空滿 增減次序 棧 、 塊遞增 棧 、 塊遞減 頂滿 頂空 頂滿 頂空 地址 增加 先增 STMIB STMFA LDMIB LDMED 后增 STMIA STMEA LDMIA LDMFD 地址 減少 先減 LDMDB LDMEA STMDB STMFD 后減 LDMDA LDMFA STMDA STMED 多寄存器 load和 stroe指令的堆棧和塊拷貝對(duì)照 STMFA( Full、 Add):棧滿遞增。 相對(duì)尋址 相對(duì)尋址 —— 與基址變址尋址方式相類似 , 相對(duì)尋址以程序計(jì)數(shù)器 PC的當(dāng)前值為基地址 , 指令中的地址標(biāo)號(hào)作為偏移量 , 將兩者相加之后得到操作數(shù)的有效地址 。 SUBRl應(yīng)為 24位有符號(hào)數(shù) SUBR1 … … MOV PC, LR ;返回 ARM指令集 主要內(nèi)容 存儲(chǔ)器訪問指令 數(shù)據(jù)處理指令 分支指令 協(xié)處理器指令 雜項(xiàng)指令 ARM偽指令 存儲(chǔ)器訪問指令 ARM微處理器用加載 /存儲(chǔ)指令訪問存儲(chǔ)器,實(shí)現(xiàn)在寄存器和存儲(chǔ)器之間傳送數(shù)據(jù)。 由于 ARM處理器對(duì)外設(shè)寄存器、 I/O映射空間與存儲(chǔ)器統(tǒng)一編址,因此,對(duì)外圍設(shè)備的 I/O操作也用此類指令。 根據(jù)傳送數(shù)據(jù)的類型不同 , 單個(gè)寄存器存取指令又可以分為以下兩類: – 單字和無符號(hào)字節(jié)的加載 /存儲(chǔ)指令 – 半字和有符號(hào)字節(jié)的加載 /存儲(chǔ)指令 單字和無符號(hào)字節(jié)的加載/存儲(chǔ)指令 ? LDR: 指令從內(nèi)存中取 32位字或 8位無符號(hào)字節(jié)數(shù)據(jù)放入寄存器; ? STR: 指令將寄存器中的 32位字或 8位無符號(hào)字節(jié)數(shù)據(jù)保存到存儲(chǔ)器中。 ( 1)指令格式 LDR{cond}{T} Rd, 地址 ;加載指定地址上的字?jǐn)?shù)據(jù),放入 Rd中。 LDR{cond}B{T} Rd, 地址 ;加載字節(jié)數(shù)據(jù)到 Rd中 , Rd最低字節(jié)有效, 高 24位為 0。 ? T后綴 – T為可選后綴,若指令有 T,那么即使處理器是在特權(quán)模式下,存儲(chǔ)系統(tǒng)也將訪問看成是處理器是在用戶模式下。 – 不能與前變址模式、自動(dòng)變址模式一起使用(即不能改變基址寄存器值)。 ( 2)操作數(shù)尋址方式 LDR/STR指令為變址尋址 ,由兩部分組成: – 基地址部分: 為一個(gè)基址寄存器,可以為任一個(gè)通用寄存器; – 偏移地址部分: 這一部分非常靈活,實(shí)際就是第二個(gè)操作數(shù),可以有以下 3種格式: ?立即數(shù) ?寄存器 ?寄存器及移位常數(shù)。這個(gè)數(shù)據(jù)可以加到基址寄存器,也可以從基址寄存器中減去這個(gè)數(shù)值。 指令舉例如下: ? LDR R1, [R0, R2] ;將 R0+R2地址處的數(shù)據(jù)讀出,保存到 R1中 ? LDR R1, [R0, R2] ;將 R0R2地址處的數(shù)據(jù)讀出,保存到 R1中 ③ 寄存器及移位常數(shù) ——寄存器移位后的值可以加到基址寄存器,也可以從基址寄存器中減去這個(gè)數(shù)值。 ④ PC(即 R15)使用的幾個(gè)問題 ? 使用 PC作為基址時(shí),使用的數(shù)值是指令的地址加 8個(gè)字節(jié)(取指與執(zhí)行相差 8個(gè)字節(jié))。 ? 把一個(gè)字加載到 PC,將使程序轉(zhuǎn)移到所加載的地址,這是一個(gè)公認(rèn)的實(shí)現(xiàn)跳轉(zhuǎn)的方法。 ? 把 PC存到存儲(chǔ)器的操作在不同體系結(jié)構(gòu)的處理器中產(chǎn)生不同的結(jié)果,應(yīng)盡可能避免。 特點(diǎn): – 偏移量格式、尋址方式與加載/存儲(chǔ)字和無符號(hào)字節(jié)指令基本相同。 ( 1)指令格式如下 LDR {cond}H Rd, 地址 ;加載無符號(hào)半字?jǐn)?shù)據(jù)到 Rd的低 16位 ,高 16位清零。 STR{cond}H Rd, 地址 ;存儲(chǔ) Rd中的低 16位半字?jǐn)?shù)據(jù)。 ( 2)兩點(diǎn)說明: – 符 號(hào) 位 ——有符號(hào)字節(jié)或有符號(hào)半字的加載,用 “符號(hào)位 ”擴(kuò)展到 32位;無符號(hào)半字傳送是用 0擴(kuò)展到 32位。非半字對(duì)齊的半字加載將使 Rd內(nèi)容不可靠;非半字對(duì)齊的半字存儲(chǔ)將使指定地址的 2字節(jié)存儲(chǔ)內(nèi)容不可靠。 LDRSH R1, [R9] ;將 R9地址上的半字?jǐn)?shù)據(jù)讀出到 R1,高16位用符號(hào)位擴(kuò)展。 STRH R1, [R0, 2]! ;將 R1的數(shù)據(jù)保存到 R0+2地址中,只存儲(chǔ)低 2字節(jié)數(shù)據(jù),并且修改 R0=R0+2。 LDM為加載多個(gè)寄存器; STM為存儲(chǔ)多個(gè)寄存器 。 指令格式 ? LDM{cond}模式 Rn{!}, reglist{^} ? STM{cond} 模式 Rn{!}, reglist{^} 指令格式說明 ( 1) Rn: 表示基址寄存器 , 裝有傳送數(shù)據(jù)的初始地址 , Rn不允許為 R15( 即 PC) 。 ( 3) Reglist: 表示寄存器列表 , 可包含多個(gè)序號(hào)連續(xù)的或者分離的寄存器 , 用 “, ”分開 。 ( 4) 后綴 “^”說明 – 寄存器列表不包含 PC: 使用后綴 “^”進(jìn)行數(shù)據(jù)傳送且時(shí) , 加載/存儲(chǔ)的是用戶模式的寄存器 , 而不是當(dāng)前模式的寄存器 。 該用法可用于異常處理返回 。 ( 5)當(dāng) Rn在寄存器列表中且使用后綴“!” – 對(duì)于 STM指令,若 Rn為寄存器列表中的最低數(shù)字的寄存器,則會(huì)將 Rn的初值保存; – 其它情況下 Rn的加載值和存儲(chǔ)值不可預(yù)知。 ( 7) 關(guān)于模式項(xiàng) LDM/STM的主要用途是現(xiàn)場(chǎng)保護(hù) 、 數(shù)據(jù)復(fù)制和參數(shù)傳送等 。 ( 7) 關(guān)于模式項(xiàng) LDM/STM的主要用途是現(xiàn)場(chǎng)保護(hù) 、 數(shù)據(jù)復(fù)制和參數(shù)傳送等 。 應(yīng)用舉例 ? LDMIA R0!, {R3 R9} ;加載 R0指向地址上的多字?jǐn)?shù)據(jù),保存到R3~R9中, R0值更新。 ? STMFD SP!, {R0 R7, LR} ;現(xiàn)場(chǎng)保存,將 R0~ R LR入棧, SP值更新 。 三、 單寄存器交換指令( SWP) SWP指令 用于將一個(gè)存儲(chǔ)單元 (該單元地址放在寄存器Rn中 )的內(nèi)容讀取到一個(gè)寄存器 Rd中,同時(shí)將另一個(gè)寄存器 Rm的內(nèi)容寫入到該存儲(chǔ)單元中。 指令舉例 ? SWP R1, R1, [R0] ;將 R1的內(nèi)容與 R0指向的存儲(chǔ)單元的內(nèi)容進(jìn)行交換。 ARM數(shù)據(jù)處理指令的特點(diǎn) – 操作數(shù)來源: 所有的操作數(shù)要么來自寄存器,要么來自立即數(shù),不會(huì)來自存儲(chǔ)器。 – 有第二個(gè)操作數(shù)(除了乘法指令) Operand2 :切記其三種形式:立即數(shù)、寄存器、寄存器移位。 ARM數(shù)據(jù)處理指令分類 22條可分為 5類: – 算術(shù)運(yùn)算指令: ADD ADC SUB SBC RSB RSC MUL MLA UMULL UMLAL SMULL SMLAL – 邏輯運(yùn)算指令: AND ORR EOR BIC – 數(shù)據(jù)傳送指令: MOV MVN – 比較指令: CMP CMN – 測(cè)試指令: TST TEQ 上述指令只能對(duì)寄存器操作,不能針對(duì)存儲(chǔ)器。但是比較指令( cmp、 cmn、 tst和 teq)不需要后綴 S,它們總會(huì)直接影響 CPSR中的狀態(tài)標(biāo)志。 – Z標(biāo)志位: 如果結(jié)果為0,則Z標(biāo)志位置1;否則清0。如果不需要移位,則C保持不變。在加減操作中,如果有溢出,則置1;不發(fā)生溢出,則清0。比如: – movs pc, 0xff /* cpsr = spsr。 pc = r1 + 0xffffff00 */ – ands pc, r1, r2 /* cpsr = spsr。 r2。 數(shù)據(jù)處理指令的二進(jìn)制編碼 add r0, r1, 0xff add r0, r1, r1, LSL r2 add r0, r1, r1, LSL 31 數(shù)據(jù)處理指令的詳細(xì)列表 (未含 6條乘法指令) 操作碼 [24: 21] 助記符 意 義 效 果 0000 AND 邏輯位與 Rd = Rn AND Op2 0001 EOR 邏輯位異或 Rd = Rn EOR Op2 0010 SUB 減 Rd = Rn Op2 0011 RSB 反向減 Rd = Op2 – Rn 0100 ADD 加 Rd = Rn + Op2 0101 ADC 帶進(jìn)位加 Rd = Rn + Op2 + C 0110 SBC 帶進(jìn)位減 Rd = Rn Op2 + C 1 0111 RSC 反向帶進(jìn)位減 Rd = Op2 Rn + C 1 1000 TST 測(cè)試 根據(jù) Rn AND Op2設(shè)置條件碼 1001 TEQ 測(cè)試相等 根據(jù) Rn EOR Op2設(shè)置條件 1010 CMP 比較 根據(jù) Rn Op2設(shè)置條件碼 1011 CMN 負(fù)數(shù)比較 根據(jù) Rn + Op2設(shè)置條件碼 1100 ORR 邏輯位或 Rd = Rn OR Op2 1101 MOV 傳送 Rd = Op2 1110 BIC 位清零 Rd = Rn AND NOT Op2 1111 MVN 求反 Rd = NOT Op2 算術(shù)運(yùn)算指令 一、加減運(yùn)算指令 ADD——加法運(yùn)算指令 指令格式 ADD{cond}{S} Rd, Rn, operand2 ADD指令將 operand2的數(shù)據(jù)與 Rn的值相加,結(jié)果保存到 Rd寄存器。 指令舉例 ADDS R4, R0, R2 ;使用 ADC實(shí)現(xiàn) 64位加法 ADC R5, R1, R3 ; (R R4)= (R R0)+(RR2) SUB——減法運(yùn)算指令 指令格式 SUB{cond}{S} Rd, Rn, operand2 SUB指令用寄存器 Rn減去 operand2,結(jié)果保存到 Rd中。 指令舉例 SUBS R4, R0, R2 ;使用 SBC實(shí)現(xiàn) 64位減法, SBC R5, R1, R3 ; (R5,R4)= (R1,R0)(R3
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1