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

正文內(nèi)容

嵌入式arm系統(tǒng)原理與實(shí)例開(kāi)發(fā)-文庫(kù)吧資料

2025-05-20 06:43本頁(yè)面
  

【正文】 開(kāi)發(fā) (第 2版) 1 2 ARM處理器工作模式及寄存器功能 ARM尋址方式 3 ARM指令及應(yīng)用程序設(shè)計(jì) 第 3章 ARM程序設(shè)計(jì)基礎(chǔ) 4 ARM偽指令及應(yīng)用程序設(shè)計(jì) 5 ARM匯編程序設(shè)計(jì)實(shí)例 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 48 符號(hào)定義偽指令及例程 ? ( 1) GBLA 定義全局?jǐn)?shù)字變量并初始化為 0。保存到 R10所表示的內(nèi)存單元 B end 。R3=R10所表示的內(nèi)存單元的數(shù)據(jù)的低 8位 。再將 R2 。R10=0x10 SWP R1,R2,[R10] 。R1=0x124 MOV R2,0x234 。從 op2所表示的內(nèi)存裝載一個(gè)字節(jié)并把這個(gè)字節(jié)放置到目的寄存器 Rd的低 8位中, Rd的高 24位設(shè)置為 0;然后將寄存器 op1的低 8位數(shù)據(jù)存儲(chǔ)到同一內(nèi)存地址中。/ 用 R0去改變 cpsr的控制位 */ stop BL stop 。/* 用 R0去改變 cpsr的狀態(tài)位 */ MSR CPSR_x,R0 。/*設(shè)置 R1為 0xff000000 */ MSR CPSR_f,R1 。/*保存 spsr 到 R1*/ MOV R0,0XF0 。 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 44 CPSR數(shù)據(jù)傳輸指令及例程 AREA EXAMPLE3,CODE,READONLY ENTRY START MRS R0,CPSR 。PC=LR, PC指向 (B ends),死循環(huán),程序到這里結(jié)束 src DCD 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 drca SPACE 64 drcb SPACE 64 END 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 43 CPSR數(shù)據(jù)傳輸指令及例程 ? MRS{cond} Rd,CPSR/SPSR – 程序狀態(tài)寄存器到通用寄存器的數(shù)據(jù)傳達(dá)指令,用于將程序狀態(tài)寄存器的內(nèi)容傳送到目標(biāo)寄存器 Rd中。將地址為 [r044]、 [r04]的內(nèi)存內(nèi)容順次加載到 。將 r7,r8順次傳送到內(nèi)存地址 [r0+4],[r0+4+4] STMFD R0!,{R3,R4} 。將 r3,r4順次傳送到內(nèi)存地址 [r0],[r0+4] STMED R0!,{R5,R6} 。r7=0xf MOV R8,0XFF 。r5=0xf000 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 42 批量?jī)?nèi)存數(shù)據(jù)加載指令程序舉例 MOV R6,0XFF 。r3=0x0f MOV R4,0XF0 。將地址為 [r044]、 [r04]的內(nèi)存內(nèi)容 。將起始地址為 [r0+4]的內(nèi)存內(nèi)容順次加載到 r5,r6 LDMDA R0,{R7,R8} 。加載 drcb地址到 R13 LDMIA R0,{R3,R4} 。r0=r0+0x8 ADR R1,drca 。PC=LR, PC指向 (B ends),死循環(huán),程序到這里結(jié)束 src DCB 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16 drc SPACE 16 END 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 41 批量?jī)?nèi)存數(shù)據(jù)加載指令程序舉例 AREA EXAMPLE3,CODE,READONLY ENTRY START ADR R0,src 。/*將內(nèi)存中地址為 R1的字?jǐn)?shù)據(jù)裝入 R5, 。/*將內(nèi)存中地址為 R2的字?jǐn)?shù)據(jù)裝入 R5, 。/*把 R5的字?jǐn)?shù)據(jù)保存到以 R1為地址的內(nèi)存中 , 。/*將內(nèi)存中地址為 R2的字?jǐn)?shù)據(jù)裝入 R5, 。/*把 R4的字?jǐn)?shù)據(jù)保存到以 R1+R0為地址的內(nèi)存中 , 。/*把內(nèi)存地址為 R2+R0的字?jǐn)?shù)據(jù)裝入 R4, 。 ? STM {cond} addressing_mode Rn{!},Registers – 批量?jī)?nèi)存字?jǐn)?shù)據(jù)寫(xiě)入。 – 字?jǐn)?shù)據(jù)寫(xiě)入指令 ,將一個(gè) 32位的字( Rd中的字)數(shù)據(jù)寫(xiě)入到指定的內(nèi)存單元。然后 R1=R1+0X01*/ 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 39 內(nèi)存數(shù)據(jù)加載指令及例程 ? LDR {cond} Rd,addressing_mode – 字?jǐn)?shù)據(jù)讀取指令 ,將 addressing_mode中的字讀取到 Rd中。R2=R2+0X01/ STR R3,[R1,0X01]!。/*把 R5的字?jǐn)?shù)據(jù)保存到以 R1+R0為地址的內(nèi)存中 */ LDR R3,[R2,0X01]! 。然后 R1=R1+0X08*/ LDR R5,[R2,R0] 。/*把內(nèi)存中地址為 R2+0X08的字?jǐn)?shù)據(jù)裝入 R4*/ STR R4,[R1,0X08] 。/*把內(nèi)存中地址為 R2的字?jǐn)?shù)據(jù)裝入 R3*/ STR R3,[R1] 。/*將標(biāo)號(hào) src的 address裝入 R2*/ ADR R1,drc 。/*GIVE A CODE ,WHICH CALLED EXAMPLE3*/ ENTRY START MOV R0,0X02 。PC=LR, PC指向( BLX t16)的 。PC=LR, PC指向( BL b)的下一行, 。程序到這里結(jié)束 b MOV R3,2 。跳轉(zhuǎn)到 ends ends 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 37 MOV PC,LR 。跳轉(zhuǎn)至 b BLX t16 。這條語(yǔ)句將不會(huì)被執(zhí)行 a MOV R2,11 。 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 36 跳轉(zhuǎn)指令及例程 AREA EXAMPLE3,CODE,READONLY ENTRY START B a 。 ? BLX addr 或 BLX Rn – 帶返回和狀態(tài)切換的跳轉(zhuǎn)指令 ,處理器跳轉(zhuǎn)到目標(biāo)地址處,從那里繼續(xù)執(zhí)行,并將 PC的值保存到 LR 寄存器中。/*死循環(huán) */ END 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 35 跳轉(zhuǎn)指令及例程 ? B{cond} addr – 跳轉(zhuǎn)指令,一旦遇到 B指令, ARM指令將立即跳轉(zhuǎn)到給定的 addr標(biāo)號(hào)位置,然后從那里繼續(xù)執(zhí)行 。32位無(wú)符號(hào)數(shù), R8, R0 的值 。R0=R1*R2 的高 32位 +R0, 。R0=R1*R2 的高 32位 +R0 */ UMLAL R8,R0,R1,R2 。/*R3=R0*R1+R2 */ SMLAL R6,R0,R1,R2 。/*R8=R1*R0 的低 32位, R7=R1*R0 的高 32位, 。/*R6=R1*R0 的低 32位, R5=R1*R0 的高 32位, 。/*對(duì) R3 賦值 0 */ MULS R4,R0,R1 。/*對(duì) R1 賦值 0X10 */ MOV R2,0X1000000 。/*聲明一段名為 EXAMPLE3 的代碼 */ ENTRY START MOV R0,0XFF000000 。R0的取反 */ stop B stop 。/*R4=R1⊕ R0*/ BIC R5,R1,R0 。R0*/ EOR R3,R1,R0 。/*對(duì) R1 賦值 0X0F*/ AND R2,R1,R0 。/*聲明一段名為EXAMPLE3的代碼 */ ENTRY START MOV R0,0xF8 。后傳送到 R7*/ stop BL stop END 。后傳送到 R6*/ RSC R7,R1,R2 。 s表示會(huì)影響 cpsr*/ SBC R6,R1,R2 。/*R1減 R2的值傳送到 R5*/ RSBS R5,R2,R1 。/*R2減 R1的值傳送到 R4, 。s表示值會(huì)影響 cpsr*/ 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 29 加減法指令及例程 SUB R4,R2,R1 。/*把 R2加 R1的值傳送到 R5,s表示會(huì)影響 cpsr*/ ADCS R6,R2,R1 。/*把 0xFF取反后傳送到 R3*/ ADD R4,R2,R1 。/*把 0XEF000000傳送到 R1*/ MOV R2,0x2F000000 。/*指定函數(shù)的入口 */ START MOV R0,0xFF 。 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 1 2 ARM處理器工作模式及寄存器功能 ARM尋址方式 3 ARM指令及應(yīng)用程序設(shè)計(jì) 第 3章 ARM程序設(shè)計(jì)基礎(chǔ) 4 ARM偽指令及應(yīng)用程序設(shè)計(jì) 5 ARM匯編程序設(shè)計(jì)實(shí)例 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 26 mov指令及例程 ? MOV{cond}{S} Rd,op1 數(shù)據(jù)傳送指令 ? MVN{cond}{S} Rd,op1 數(shù)據(jù)取反傳送指令 1 1 9 81 0 7 5 46 3 1 02R o t a t e _ i m m I m m e d _ 8嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 27 加減法指令及例程 ? ADD{cond}{S} Rd,Rn,op2 – 加法指令 Rd=op1 ? ADC{cond}{S} Rd,Rn,op2 – 帶進(jìn)位的加法指令 Rd=!op1 ? SUB{cond}{S} Rd,Rn,op2 – 減法指令 Rd=Rn+op2 ? RSB{cond}{S} Rd,Rn,op2 – 反向減法指令 Rd=Rn+op2+carry ? SBC{cond}{S} Rd,Rn,op2 – 帶借位減法指令 Rd=Rnop2 ? RSC{cond}{S} Rd,Rn,op2 – 帶借位的反向減法指令 Rd=op2Rn 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 28 加減法指令及例程 AREA EXAMPLE3,CODE,READONLY 。 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 24 標(biāo)號(hào) ? 標(biāo)號(hào)就是一個(gè)地址的代號(hào),一般用于跳轉(zhuǎn)指令使用,如果是較大范圍跳轉(zhuǎn),則需要使用與 ARM指令不相沖突關(guān)鍵字,例如框架代碼中的 START和 STOP,標(biāo)號(hào)在編程時(shí)頂格寫(xiě)(代碼和偽指令前都要使用 TAB鍵)。 R2←[R1] , R12←[R2+4] 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 21 ARM匯編程序框架 嵌入式 ARM系統(tǒng)原理與實(shí)例開(kāi)發(fā) (第 2版) 2021/6/16 北京大學(xué)出版社出版 22 段 嵌入
點(diǎn)擊復(fù)制文檔內(nèi)容
醫(yī)療健康相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1