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

正文內(nèi)容

三、arm指令2(完整版)

2025-02-04 15:20上一頁面

下一頁面
  

【正文】 括號(hào)中。注:對(duì)于雙字傳送地址必須是 8的倍數(shù),若有協(xié)處理器, 可允許對(duì)此檢查。 Load/Store指令指令(一 )存儲(chǔ)器訪問( Load/Store)指令30 功能:提供 ARM寄存器和內(nèi)存之間半字 (16位) 和有符號(hào)字節(jié)( 8位)數(shù)據(jù)的傳送。4kB范圍內(nèi)。 (加載無符字節(jié)數(shù)據(jù) ,零擴(kuò)展到 32位 ) Load/Store指令(一 )存儲(chǔ)器訪問( Load/Store)指令22 ( 1)零偏移Rd: ARM寄存器Rn:存儲(chǔ)器的基址寄存器,若指令是帶寫回的前變址 (加后綴 “! ”)或后變址。文件 結(jié) 束 使用 “; ”進(jìn)行注釋標(biāo)號(hào)頂格寫實(shí)際代碼段聲明文件結(jié)束15 167。聲明代碼段 Example1 ENTRY 。HANDLER HandleFIQ sub sp, sp,4 。使用堆棧指令進(jìn)行堆棧操作STMED R0!,{R5R6}. . .LDMED R0!,{R5R6} 兩段代碼的執(zhí)行結(jié)果是一樣的,但是使用堆棧指令的壓棧和出棧操作編程很簡單(只要前后一致即可),而使用數(shù)據(jù)塊指令進(jìn)行壓棧和出棧操作則 需要考慮空與滿、加與減對(duì)應(yīng)的問題 。R5← [R1] 。 ((R1))→R0 ,(R1) +4→R1 后變址偏移尋址? 堆棧尋址 LDM/STM FD、 ED、 FA、 EAF多寄存器尋址 LDM/STM IA、 IB、 DA、 DBF相對(duì)尋址 B rel 。( R1) →R0F寄存器移位尋址F寄存器間接尋址 LDR R0, [R3]。R0← [R1+4] 。R0← [R112]4 ? ARM存儲(chǔ)器訪問指令 —— 多寄存器存取數(shù)據(jù)塊傳送指令 操作過程如右圖所示,其中 R1為指令執(zhí)行前的基址寄存器, R1’ 則為指令執(zhí)行后的基址寄存器。/* handlerPAbort */ b HandlerDabort 。文件名: 。跳轉(zhuǎn)到 LOOPADD_SUB ADDS R0,R0,R1 。 ARM指令系統(tǒng)介紹19 ?LDR和 STR—— 字和無符號(hào)字節(jié)加載 /存儲(chǔ)指令編碼指令執(zhí)行的條件碼I為 0時(shí),偏移量為 12位立即數(shù),為 1時(shí),偏移量為寄存器移位P表示前 /后變址U表示加 /減B為 1表示字節(jié)訪問,為 0表示字訪問W表示回寫為指令的尋址方式Rd為源 /目標(biāo)寄存器Rn為基址寄存器L用于區(qū)別加載( L為 1)或存儲(chǔ)( L為 0)20 字節(jié)碼結(jié)構(gòu)(一 )存儲(chǔ)器訪問( Load/Store)指令STRB R0, [R3, R8, ASR2]; R0 → (R3R8/4) ,21 指令格式:( 1)零偏移 LDR/STR{〈條件碼〉 }{B}{T} Rd, [Rn] ;(( Rn)) → Rd 功能:將 Rn的內(nèi)容作為傳送數(shù)據(jù)的地址。! :可選后綴,若有 “! ”,則將結(jié)果地址寫回 到 Rn, 若 Rn是 R15,則不能夠用后綴 “! ”。 LDR Rd, [Rn], offset 。它必須在當(dāng)前指令的 177。傳入或傳出的是用戶模式下的寄存器,而不是當(dāng)前模式下的寄存器。用于從異常處理返回。內(nèi)存和寄存器交換指令?SWP指令應(yīng)用示例:SWP R1,R1,[R0] 。Rn  寄存器 Rn的內(nèi)容為進(jìn)行數(shù)據(jù)交換的存儲(chǔ)器的地址, Rn必須與 Rd和 Rm不同。 減法(含比較)夠減時(shí), C=1。非法常量: 0X10 0XFF0 0XFF00 0XFFFFFFFF。R1=R1+R2 64 助記符 說明 操作 條件碼位置ADD Rd, Rn, operand2 加法運(yùn)算指令 Rd← Rn+operand2 ADD{cond}{S}SUB Rd, Rn, operand2 減法運(yùn)算指令 Rd← Rnoperand2 SUB{cond}{S}RSB Rd, Rn, operand2 逆向減法指令 Rd← operand2Rn RSB{cond}{S}ADC Rd, Rn, operand2 帶進(jìn)位加法 Rd← Rn+operand2+Carry ADC{cond}{S}SBC Rd, Rn, operand2 帶進(jìn)位減法指令 Rd← Rnoperand2(NOT)Carry SBC{cond}{S}RSC Rd, Rn, operand2 帶進(jìn)位逆向減法指令Rd← operand2Rn(NOT)Carry RSC{cond}{S}? ARM數(shù)據(jù)處理指令 —— 算術(shù)運(yùn)算 減法運(yùn)算指令 —— SUB指令用寄存器 Rn減去 operand2,結(jié)果保存到 Rd中。R0等于低 32位相加,并影響標(biāo)志位 ADC R1,R1,R3 。R2=R1R3 AND R0,R0,3 。R2=R1^R0 EORS R0,R5,0x01 。 R1與 10比較,設(shè)置相關(guān)標(biāo)志位 CMP R1,R2 。指令格式如下: CMP{cond} Rn, operand2注意 : CMN指令與 ADDS指令的區(qū)別在于 CMN指令不保存運(yùn)算結(jié)果 。 81 助記符 說明 操作 條件碼位置CMP Rn, operand2 比較指令 標(biāo)志 N、 Z、 C、 V← Rnoperand2 CMP{cond}CMN Rn, operand2 負(fù)數(shù)比較指令 標(biāo)志 N、 Z、 C、V← Rn+operand2 CMN{cond}TST Rn, operand2 位測(cè)試指令 標(biāo)志 N、 Z、 C、 V← Rn operand2 TST{cond}TEQ Rn, operand2 相等測(cè)試指令 標(biāo)志 N、 Z、 C、 V← Rn ^ operand2 TEQ{cond}? ARM數(shù)據(jù)處理指令 —— 比較指令 相等測(cè)試指令 —— TEQ指令將寄存器 Rn的值與 operand2的值按位作邏輯 “ 異或 ” 操作,根據(jù)操作的結(jié)果更新 CPSR中的相應(yīng)條件標(biāo)志位,以便后面的指令根據(jù)相應(yīng)的條件標(biāo)志來判斷是否執(zhí)行。32 32位乘加指令;167。指令格式如下: UMULL{cond}{S} RdLo,RdHi,Rm,Rs 應(yīng)用示例: UMULL R0,R1,R5,R8 。乘法指令84 ? ARM指令 —— 乘法指令?乘法指令編碼指令執(zhí)行的條件碼Opcode乘法指令操作碼S設(shè)置條件碼,與指令中的 S位對(duì)應(yīng)Rm為被乘數(shù)寄存器Rd/RdLo為 MLA指令相加的寄存器或 64位乘法指令的目標(biāo)寄存器(低32位)Rn/RdHi為目標(biāo)寄存器或 64位乘法指令的目標(biāo)寄存器(高32位)Rs為乘數(shù)寄存器64位有符號(hào)乘加指令SMLAL11164位有符號(hào)乘法指令SMULL11064位無符號(hào)乘加指令UMLAL10164位無符號(hào)乘法指令UMULL10032位乘加指令MLA00132位乘法指令MUL000說明指令助記符操作碼opcode操作碼功能表85 助記符 說明 操作 條件碼位置MUL Rd,Rm,Rs 32位乘法指令 Rd← Rm*Rs (Rd≠ Rm) MUL{cond}{S}MLA Rd,Rm,Rs,Rn 32位乘加指令 Rd← Rm*Rs+Rn (Rd≠ Rm) MLA{cond}{S}UMULL RdLo,RdHi,Rm,Rs 64位無符號(hào)乘法指令 (RdLo,RdHi) ← Rm*Rs UMULL{cond}{S}UMLAL RdLo,RdHi,Rm,Rs 64位無符號(hào)乘加指令 (RdLo,RdHi) ← Rm*Rs+(RdLo,RdHi)UMLAL{cond}{S}SMULL RdLo,RdHi,Rm,Rs 64位有符號(hào)乘法指令 (RdLo,RdHi) ← Rm*Rs SMULL{cond}{S}SMLAL RdLo,RdHi,Rm,Rs 64位有符號(hào)乘加指令 (RdLo,RdHi) ← Rm*Rs+(RdLo,RdHi)SMLAL{cond}{S}? ARM指令 —— 乘法指令86 助記符 說明 操作 條件碼位置MUL Rd,Rm,Rs 32位乘法指令 Rd← Rm*Rs (Rd≠ Rm) MUL{cond}{S}MLA Rd,Rm,Rs,Rn 32位乘加指令 Rd← Rm*Rs+Rn (Rd≠ Rm) MLA{cond}{S}UMULL RdLo,RdHi,Rm,Rs 64位無符號(hào)乘法指令 (RdLo,RdHi) ← Rm*Rs UMULL{cond}{S}UMLAL RdLo,RdHi,Rm,Rs 64位無符號(hào)乘加指令 (RdLo,RdHi) ← Rm*Rs+(RdLo,RdHi)UMLAL{cond}{S}SMULL RdLo,RdHi,Rm,Rs 64位有符號(hào)乘法指令 (RdLo,RdHi) ← Rm*Rs SMULL{cond}{S}SMLAL RdLo,RdHi,Rm,Rs 64位有符號(hào)乘加指令 (RdLo,RdHi) ← Rm*Rs+(RdLo,RdHi)SMLAL{cond}{S}? ARM指令 —— 乘法指令 32位乘法指令 —— MUL指令將 Rm和 Rs中的值相乘,結(jié)果的低 32位保存到 Rd中。 比較 R0與 R1是否相等 (不影響 V位和 C位 )82 助記符 說明 操作 條件碼位置CMP Rn, operand2 比較指令 標(biāo)志 N、 Z、 C、 V← Rnoperand2 CMP{cond}CMN Rn, operand2 負(fù)數(shù)比較指令 標(biāo)志 N、 Z、 C、V← Rn+operand2 CMN{cond}TST Rn, operand2 位測(cè)試指令 標(biāo)志 N、 Z、 C、 V← Rn operand2 TST{cond}TEQ Rn, operand2 相等測(cè)試指令 標(biāo)志 N、 Z、 C、 V← Rn ^ operand2 TEQ{cond}? ARM數(shù)據(jù)處理指令 —— 比較指令 相等測(cè)試指令 —— TEQ指令將寄存器 Rn的值與 operand2的值按位作邏輯 “ 異或 ” 操作,根據(jù)操作的結(jié)果更新 CPSR中的相應(yīng)條件標(biāo)志位,以便后面的指令根據(jù)相應(yīng)的條件標(biāo)志來判斷是否執(zhí)行。 79 助記符 說明 操作 條件碼位置CMP Rn, operand2 比較指令 標(biāo)志 N、 Z、 C、 V← Rnoperand2 CMP{cond}CMN Rn, operand2 負(fù)數(shù)比較指令 標(biāo)志 N、 Z、 C、V← Rn+operand2 CMN{cond}TST Rn, operand2 位測(cè)試指令 標(biāo)志 N、 Z、 C、 V← Rn operand2 TST{cond}TEQ Rn, operand2 相等測(cè)試指令 標(biāo)志 N、 Z、 C、 V← Rn ^ operand2 TEQ{cond}? ARM數(shù)據(jù)處理指令 —— 比較指令 位 測(cè)試指令 —— TST指令將寄存器 Rn的值與 operand2的值按位作邏輯“ 與 ” 操作,根據(jù)操作的結(jié)果更新 CPSR中的相應(yīng)條件標(biāo)志位,以便后面的指令根據(jù)相應(yīng)的條件標(biāo)志來判斷是否執(zhí)行。指令格式如下: CMP{cond} Rn, operand2 注意 : CMP指令與 SUBS指令的區(qū)別在于 CMP指令不保存運(yùn)算結(jié)果。結(jié)果保存到 R0,并影響標(biāo)志位 73 助記符 說明 操作 條件碼位置AND Rd, Rn, operand2 邏輯與操作指令 Rd← Rn operand2 AND{cond}{S}ORR Rd, Rn, operand2 邏輯或操作指令 Rd← Rn | operand2 ORR{cond}{S}EOR Rd, Rn, operand2 邏輯異或操作指令 Rd← Rn ^ operand2 EOR{cond}{S}BIC Rd, Rn, operand2 位清除指令 Rd← Rn (~operand2) BIC{cond}{S}? ARM數(shù)據(jù)處理指令 —— 邏輯運(yùn)算指令 位清除指令 —— BIC指令將寄存器 Rn的值與 operand2的值的反碼按位作邏輯 “ 與 ” 操作,結(jié)果保存到 Rd中。指令格式如下: (用于設(shè)置操作數(shù) 1的某些位 )ORR{cond}{S} Rd,Rn, operand2 應(yīng)用示例: (1) ORR R0,R0,0x0F 。指令格式如下: ( 減法(含比較)夠減時(shí), C=1)SBC{cond}{S} Rd,Rn,operand2 應(yīng)用示例(使用 SBC實(shí)現(xiàn) 64位減法,結(jié)果存于 R R0中): SUBS R0,R0,R2 。R0=R01 ,并影響標(biāo)志位 SUBS R2,R1,
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1