![课件案例教案_第1页](http://file4.renrendoc.com/view/131b3e52bdde2d533fdb62afc50762f6/131b3e52bdde2d533fdb62afc50762f61.gif)
![课件案例教案_第2页](http://file4.renrendoc.com/view/131b3e52bdde2d533fdb62afc50762f6/131b3e52bdde2d533fdb62afc50762f62.gif)
![课件案例教案_第3页](http://file4.renrendoc.com/view/131b3e52bdde2d533fdb62afc50762f6/131b3e52bdde2d533fdb62afc50762f63.gif)
![课件案例教案_第4页](http://file4.renrendoc.com/view/131b3e52bdde2d533fdb62afc50762f6/131b3e52bdde2d533fdb62afc50762f64.gif)
![课件案例教案_第5页](http://file4.renrendoc.com/view/131b3e52bdde2d533fdb62afc50762f6/131b3e52bdde2d533fdb62afc50762f65.gif)
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ARMARM
”知知识 <opcode>{cond}{S}<Rd>,<Rn>,
R0,R1,R0,R0,R1,R2,LSRR1,知知讲 讲 <Rm>, <Rm>, <Rm>, <Rm>,LSR<Rm>,ASR<Rm>,ASR<Rm>,ROR<Rm>,ROR<Rm>,
寄存Rm逻辑左移shift_immRm逻辑左移RsRm算术右移shift_immRm算术右移RsRm循环右移shift_immRm循环右移RsRm扩展的循环右移一知知识讲0 0000 000
00 CC知shifter_operand知识讲 MOVR0,#0xFFADDR1,R2,#2CMPR1,#0x知shifter_operand为立即数举知 8 Rt1, Rt1, 58位常01001000000000000000000000000000 0000000000000000知 讲解<Rm>,<Rm>,<Rm>,
格
说Rm逻辑左移shift_immRm逻辑左移RsRm逻辑右移shift_imm<Rm>,LSR<Rm>,ASR<Rm>,ASR<Rm>,ROR<Rm>,ROR<Rm>,
Rm逻辑右移RsRm算术右移shift_immRm算术右移RsRm扩展的循环右移一知shifter_operand为寄存器丼知识讲解MOV R1,
ADDR0,R1,R2 识 识ADDR1,R2,R3,LSL#3SUBR1,R2,R3,LSR
”知知识 MOV{cond}{S}<Rd>,:立即数 R0, R0,N=
@CPSR=SPSRZ=ifRd==0then1else0C=shifter_carry_out, R3,R4,LSL R0, PC,知知识 MVN{cond}{S}<Rd>, R0,#0x80 PC,R0 R0,R1N=Z=ifRd==0then1else0C=shifter_carry_out, R3,R4,LSL代码践 码践 R0,课 R0,”知知识解 解ADD{cond}{S}<Rd>,<Rn>,
R0,R1,#0x80R0,R1,R3R0,R1,R2N=Z=ifRd==0then1elseC=CarryFrom(Rn+V=OverflowFrom(Rn+ PC,R1,代码践 码践 R0,R1, R0=R1+练 R0,R1,练 R0=R1+ R0,R2,R3,LSLR0=R2+(R3<<知知识 ADC{cond}{S}<Rd>,<Rn>,
R0,R1,#0x80R0,R1,R3R0,R1,R2N=Z=ifRd==0then1elseC=CarryFrom(Rn+shifter_operand+CV=OverflowFrom(Rn+shifter_operand+C PC,R1,代实践 ADC指令应用丼实践堂 堂习 习知知识解 解SUB{cond}{S}<Rd>,<Rn>,
R0,R1,#0x80R0,R1,R3R0,R1,R2N=Z=ifRd==0then1elseC=NOTBorrowFrom(Rn-V=OverflowFrom(Rn- PC,R14,代实践 实践 R0,R1, R0,R1, R0,R2,R3,LSL R1,R2,R3 PC,R14,#4知知识 SBC{cond}{S}<Rd>,<Rn>, R0,R1, R0,R1, R0,R1,N=Z=ifRd==0then1elseV=OverflowFrom(Rn-shifter_operand–NOT(C PC,R1,代码践 SBC指令应用丼码践堂 堂习 习知知识 指令格式 RSB{cond}{S}<Rd>,<Rn>, R0,R1, R0,R1, R0,R1,N=Z=ifRd==0then1elseC=NOTBorrowFrom(shifter_operand–V=OverflowFrom(shifter_operand– PC,R1, R3,R1,R3=- R1,R2,R2,LSL实码实践践知知识解 解RSC{cond}{S}<Rd>,<Rn>,E
R0,R1,#0x80R0,R1,R3R0,R1,R2N=Z=ifRd==0then1elseV=OverflowFrom(shifter_operand–Rn PC,R1,代实践 实践堂 堂 习““” 位运算指识解 解AND{cond}{S}Rd,Rn,Rd←Rn&ORR{cond}{S}Rd,Rn,Rd←Rn|EOR{cond}{S}Rd,Rn,Rd←Rn^BIC{cond}{S}Rd,Rn,Rd←Rn&知知识解 解AND{<cond>}{S}<Rd>,<Rn>,
R0,R1,000000010100111R0,R1,N=Z=ifRd==0then1elseC=码实 码实践ANDANDR0,R1,#0x80ANDSR0,R1,R2,LSL#1ANDEQR3,R4,#0xFF知知识解 解ORR{<cond>}{S}<Rd>,<Rn>,
结果000011结果000011101111Z=ifZ=ifRd==0then1elseC= PC,R1,代实践 ORR指令使用丼实践 R0,R1,#1 R0,R1, R0,R1,R2,LSL知知识解 解EOR{<cond>}{S}<Rd>,<Rn>,
结果000011结果000011101110N=Z=ifRd==0then1elseC= PC,R1,码 EOR使用丼码 R0,R0, R0,R0, R0,R0,知知识解 解BIC{cond}{S}<Rd>,<Rn>,
R0,R1,结果结果000010101110R0,R1,N=Z=ifRd==0then1elseC=代实践 BIC指令使用丼实践 R0,R0, ” 比较测试指识解 解CMP{cond}Rn,CMN{cond}Rn,TST{cond}Rn,TEQ{cond}Rn,知知识解 解CMP{cond}<Rn>,
R0,R0,Z=ifALU_out==0then1else代实 CMP指令使用丼代实践 r1, r0, 知知识解 解CMN{cond}<Rn>,
R0,R0,Z=ifALU_out==0then1elseC=CarryFrom(Rn+V=OverflowFrom(Rn+码 CMN使用丼码实践
知知识解 解TST{cond}Rn,
R0,R0,Z=ifALU_out==0then1else0C=shifter_carry_out码 TST指令使用丼码实践 R0,#0x1 知知识解 解TEQ{cond}<Rn>,
R0,R0,Z=ifALU_out==0then1elseC=码 TEQ指令使用丼码实 码 最大公约数求码实 课 习 习ARM加载 ” ARM加载 识入 入 ARM加载 识解 加 指令包解 知知识解 指令语法格 说解LDR{cond}Rd,addressing LDR{cond}BRd,addressing Rd, LDR{cond}SBRd, LDR{cond}SHRd, 单寄存 指指令指令语法说STR{cond}Rd, Rd, Rd,识讲 识讲 LDR/LDRB:从内存 一个字戒字节数据存入寄存器STR/STRB:将寄存器中的一个字戒字节数据保存到内存 Rd Rd, Rd, Rd,识讲 加载/指令地址模式识讲地址模任一的通寄存
立即(12位
寄存 寄存器移识讲 加 地址模识讲 1.零偏LDRR0,[<Rn>,#+/-LDRLDRR0,[R1,#-[<Rn>,+/-LDRR0,[R1,LDRR0,[R1,-
;R0<-[R1–;R0<-[<Rn>,+/-<Rm>,<shift>LDRR0,[R1,R2,LSL [<Rn>,#+/-LDRR0,[R1, ;R0<-[R1+0x8]注:先索引(前变址识讲 加 地址模识讲 6.[<Rn>,+/-LDRR0,[R1,R2] ;R0<- [<Rn>,+/-<Rm>,<shift>LDRR0,[R1,R2,LSL#2]!;R0<- [<Rn>],#+/-LDRR0,[R1], ;R0=<-[R1][<Rn>],+/-LDRR0,[R1], ;R0=<-[R1][<Rn>],+/-<Rm>,<shift>LDRR0,[R1],R2,LSL ;R0=<-[R1]注:先索引(前变址)、后索引(后变址 识 先索引:STRr0,[r1, 解
更新基址寄存器时使STR后索引:STRr0,[r1],
识讲 识讲 R1,
Rd, [R0,V5orNot,PC=LDRBR1,[R2], R1,[PC, R1,[R2,R3,LSL R1,[R2, R0,[R0, 识讲 识讲 Rd,<地址模式示例STR R1,[R2]STRR1,[R2],#1 R1,[R2,STRB [R1,R2,ASRSTREQB [R1,R2,LSL [R0,[PC,8 R0,[R0, 识讲 加 指识讲 半字和有符号字节加载/指LDR{cond}SBRd,<地址模式>LDR{cond}HRd,<地址模式>STR{cond}HRd,<地址模式> 知知讲 语法格讲 LDR{cond}HRd,<地址模式>LDR{cond}SHRd,<地址模式>LDR{cond}SBRd,<地址模式>使用示 R1, R8,[R3,#2] R12,[R13,#-6] R7,[R6,#-1]! R3,[R9],LDRSBR1,[R2],
[R0], PC, R0,[R0], 知 指知识解 解STR{cond}HRd
R1,R8,[R3, R12,[R13,#-
R7,[R6,#-R3,[R9],STRHR1,[R2],
PC, R0,[R0],#4 R7,[R6,#- @“””多寄存器加 指知 多寄存器加载指令解 LDM{cond}{addressing_mode}Rb{!},<Reglist解多寄存 指令STM{cond}addressing_mode}RbReglist^}cond:条件域LDMIA/STMIALDMIB/STMIBLDMDB/Rb:基址寄存!: 更新基址寄存
IncrementAfter(先操作,后增加)IncrementBefore(先增加,后操作)DecrementAfter(先操作,后递减)DecrementBefore(先递减,后操作)Reglist:源/目标寄存器列表(可以是16个寄存器的任何子集 有两种作用 模式下使用用户模式下的寄存器 多寄存 讲 讲 LDMIA/STMIA后增加LDMIB/STMIB先增加LDMDA/STMDALDMxxr10,STMxxr10,(Rb)
解 解 R0!,{R1-R0,{R1-R3,@xSP!,{R1-R3,@xR0,{R0-R15,R0!,{R0-@xRn 码践实STMIA践
R0!,{R1-SP!,{R1-R3,R0,{R1-R3,R0,{R0-R0!,{R0-
@x
R15, @ 内存块拷贝码实践使用单寄存器加载指令实现;r8源数据起始地址;r9源数据结束地址堂 ;r10目标地堂 ldrr0,[r8],#4strr0,[r10],#4cmpr8,r9blt每个循环
码实 ;r8源数据起始地址r9源数据结束地址;前提R9-r88 ;r10目标地练 练
r8!,{r0-r7}stmiar10!,{r0-r7}cmpr8,
“ARM“”知知识 Fullstacks(满栈Emptystacks(空栈 ED(EmptyDescending) EA(EmptyAscending)知ARM知识讲
sp!,sp!,
栈操作指 讲 (Push)FullDescendingstack[多寄存 - FullDescendingstack多寄存器加STMFDsp!,{r4-r7, Old
器顶
LDMFDsp!,{r4-r7, ”知知识 cond条件码Psr程序状态寄存器(CPSR,SPSR)MRS{<cond>}<Rd>,CPSRMRS{<cond>}<Rd>,SPSR R0, R1, MSR知 解 MSR{<cond>}CPSR_<fields>,#<immediate_8>MSR{<cond>}CPSR_<fields>,<Rm>MSR{<cond>}SPSR_<fields>,#<immediate_8>MSR{<cond>}SPSR_<fields>,<Rm>解NZNZCQJUndefindITfsxc
24 65 c控制 x扩展 s状态 字节f标志 字节代 代实践 实践 R0,CPSR R0,R0,#0xF CPSR_f,R0课堂 R0, R0,R0, R0, R0,R0,#0x1F R0,R0,#0x11 CPSR_c,R0 CPSR_c,
@Readthe@CleartheN,Z,CandV@Updatetheflagbitsinthe@N,Z,CandVflagsnowall@Readthe@Settheinterruptdisable@UpdatethecontrolbitsintheCPSR@interrupts(IRQ)nowdisabled@ReadtheCPSR@Clearthemode@SetthemodebitstoFIQ@Updatethecontrolbitsinthe@nowinFIQARM寄存器到协处理器识 识讲 MCR{cond}<coproc>,<opcode_1>,<Rd>,<CRn>, >{, p15,0,r0,c1,c0,;ARMregistertransfertoCoproc;opcode1=0,opcode2=;ARMsourceregister=;coprocdestregistersare1and知ARMCORTEX-A8知知协处理器寄存器到ARM寄存知讲 讲 MRC{cond}<coproc>,<opcode_1>,<Rd>,<CRn>, >{, p15,0,R0,c1,c0,;Coproc15transfertoARM;opcode1=0,opcode2=;ARMdestinationregister=; sourceregistersare1and知MRC&MCR知识解 p15,0,r0,c1,c0,解r0,r0,@clearbits13(--V-r0,r0,@clearbits2:0(-r0,r0,@setbit1(--A-)r0,r0,p15,0,r0,c1,c0,@setbit12(Z---)“ARM“” 识解 解 小范围地址加载伪指令识 语法格 ADR{cond}register, :条件 register:标寄存器,如:R0expr:地址表达式(相对于pc戒寄存器加载地址范地址字对齐时1020地址非字对齐时:+/-示
R1,0x20R1,R0,0x64R0, 识 语法格识
知知识解 解
R0,.wordLDRpc,知知讲 讲
.wordLDRpc, 知知识 UARM” GNUARM汇编语法格识解 解instruction:指令 pseudo-instruction:伪指令 movr1 GNUARM汇编示识例 例.global r0,r0,movpc,
识 GNUARM汇编伪操识解 解符号伪操作 符号定义伪操识解 解 symbol, expr表示数字常量戒程序中的标号。 TEST_NUM, 符号定义伪操识解 解
符号定义伪操识解 解 symbol为 的外部变量名示例 知知识解 解 exprexpr 数据定义伪操识解 解
expr{,exprexpr{,exprexpr号 数据定义伪操识解 解
expr{,exprexpr{,exprexpr{,expr 数据定义伪操识解 解
expr{,exprexpr{,exprexpr{,expr 数据定义伪操识解 解
size{,size{, 识 汇编与反汇编代码控制伪操识讲 .code.code 汇编与反汇编代码控制伪操识解 解.section<section_name>flagsELFa可加载段w可写x可执行段 汇编与反汇编代码控制伪操识解 解知知识例 例.globalsubr0,r0,movpc,
代实践 实践 堂“”GNUARM汇编不“” ARMC/C++和汇编混合编识解 解可实现在c 识讲 识讲 解解寄存必须ScratchStackPointerLinkRegisterProgram
ARM-ThumbProcedureStandardorATPCS(orCPSR如果RWPI选项有效,作为栈 如果软件堆栈检
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水资源节约的宣传教育计划
- 2025年人造岗石树脂合作协议书
- 2025年冷光源:EL冷光片合作协议书
- 2025年涤纶短纤项目合作计划书
- 2025年铝合金精密模锻件项目合作计划书
- 客户关系层次化维护策略
- 数学王国里的奇妙旅程读后感
- 自动化科技设备公司项目投资合作协议
- Pinoxaden-Standard-生命科学试剂-MCE
- Mucic-acid-Standard-生命科学试剂-MCE
- 内镜室院感知识培训课件
- 一科一品一骨科护理
- 2025年市场拓展工作计划
- 2025年八省联考云南高考生物试卷真题答案详解(精校打印)
- 加气站安全培训课件
- 中国近代史纲要西安财经大学练习题复习资料
- 中国成人ICU镇痛和镇静治疗指南解读
- 延长保修服务合同
- 2020-2024年五年高考历史真题分类汇编(山东)专题15 中国古代史(原卷版)
- (房屋建筑部分)工程建设标准强制性条文版
- 《大学英语四级词汇大全》
评论
0/150
提交评论