下载此文档

ARM及Thumb指令集.pdf


文档分类:IT计算机 | 页数:约40页 举报非法文档有奖
1/40
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/40 下载此文档
文档列表 文档介绍
ARM及Thumb指令集THEARCHITECTUREFORTMTHEDIGITALWOR1LD课程安排ARM指令集Thumb指令集v5TE体系结构扩展ARM及Thumb指令集TM22ARM指令编码格式3128272524212019**********cond001opcodesRnRdShifter_operand说明Cond指令执行的条件编码Opcode指令操作符编码S决定指令的操作是否影响CPSR的值Rd操作目标寄存器编码Rn包含第一操作数的寄存器编码Shifter_operand表示第二操作数ARM及Thumb指令集TM33条件执行及标志位ARM指令可以通过添加适当的条件码后缀来达到条件执行的目的。这样可以提高代码密度,减少分支跳转指令数目,提高性能。CMPr3,#0CMPr3,#0BEQskipADDNEr0,r1,r2ADDr0,r1,r2skip默认情况下,数据处理指令不影响条件码标志位,但可以选择通过添加“S”来影响标志位。CMP不需要增加“S”就可改变相应的标志位。loop…SUBSr1,r1,#1R1减1,并设置标志位BNEloop如果Z标志清零则跳转ARM及Thumb指令集TM44ConditionCodes下表为所有可能的条件码:注意:AL为默认状态,不需要单独指出Suffix描述测试的标志位EQ等于(Equal)Z=1NE不等于(Notequal)Z=0CS/HS无符号的大于或等于C=1CC/LO无符号的小于C=0MI负数(Minus)N=1PL正数或零N=0VS溢出(Overflow)V=1VC没溢出V=0HI无符号的大于C=1&Z=0LS无符号的小于或大于C=0orZ=1GE大于等于N=VLT小于(LessThan)N!=VGT大于(GreaterThan)Z=0&N=VLE小于等于Z=1orN=!VAL总是执行(Always)ARM及Thumb指令集TM55条件执行示例一系列的指令都使用条件指令if(a==0)func(1);CMPr0,#0MOVEQr0,#1BLEQfunc置标志位,再使用不同的条件码if(a==0)x=0;if(a>0)x=1;CMPr0,#0MOVEQr1,#0MOVGTr1,#1使用条件比较指令if(a==4||a==10)x=0;CMPr0,#4CMPNEr0,#10MOVEQr1,#0ARM及Thumb指令集TM66分支指令Branch:B{<cond>}labelBranchwithLink:BL{<cond>}subroutine_label3128272524230Cond101L偏移量Linkbit0=Branch1=Branchwithlink条件码区域处理器把偏移量左移两位,进行符号扩展后再与PC相加跳转范围:±32Mbyte如何执行长跳转?ARM及Thumb指令集TM77数据处理指令包括:算术指令:ADDADCSUBSBCRSBRSC逻辑指令:ANDORREORBIC比较指令:CMPCMNTSTTEQ数据搬移:MOVMVN上述指令只能对寄存器操作,不能针对存储器。语法:<操作>{<cond>}{S}Rd,Rn,Operand2只有比较指令影响标志位-不指定Rd数据搬移不指定Rn第二个操作数通过桶型移位器送到ALU中。ARM及Thumb指令集TM88桶型移位器LSL:LogicalLeftShiftASR:ArithmeticRightShiftCFDestination0DestinationCF(无符号数)乘2除2,并保留符号位LSR:LogicalShiftRightROR:RotateRight...0DestinationCFDestinationCF(无符号数)除2位循环RRX:RotateRightExtendedDestinationCF位轮换,从CF到MSB都参与操作ARM及Thumb指令集TM99桶型移位器:第二个操作数操作数1操作数2寄存器,可选择是否增加移位操作.移位值可以是:5bit无符号整数Barrel放在另一个寄存器的低字节Shifter用于常数乘法立即数8bit,大小范围0-255。ALU右移偶数位允许直接加载32-bit常数到寄存器中。结果ARM及Thumb指令集TM1010

ARM及Thumb指令集 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数40
  • 收藏数0 收藏
  • 顶次数0
  • 上传人文档大全
  • 文件大小216 KB
  • 时间2020-07-29
最近更新