马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
第2操作数operand2有2种形式 (1)
立即数型——#<32位立即数> #<32位立即数>是取指为数字常量的表达式。但并不是所有32位立即数都是有效的,有效的立即数必须可由一个8位的立即数循环右移偶数位得到。这个问题再立即数寻址中已有详细的介绍。 (2)
寄存器型——Rm,{#<shift>} Rm是第2操作数寄存器,可对它进行移位或循环移位。<shift>用来指定移位类型和移位位数。移位位数可以是是5位立即数或寄存器。 汇编格式 根据第2操作数的类型,其汇编格式分为以下2种: <op>{<cond>}{S}Rd,Rn,#<32位立即数> <op>{<cond>}{S}Rd,Rn,Rm,{<shift>} 数据处理中R15的使用 R15作为特殊的寄存器,控制程序的运行地址,同时它也作为一般寄存器,但使用时必须注意细节问题。寄存器R15可用源操作数,但不能用来指定移位位数。在使用寄存器指定移位位数的情况下,3个源操作数不能是R15.当R15用作源操作数时,3级流水线操作使得真实PC值为当前指令的地址加8字节。 R15用作目的寄存器时,指令的功能相当于某种形式的转移指令,执行转移到结果对应的地址执行程序,常用来作为子程序返回。 若R15作为目的寄存器且使用了后缀S,即设置了S位,则将当前模式的SPSR拷贝到CPSR,着可能影响到中断使能标志位和处理器操作模式。这种机制自动恢复PC和CPSR,是实现异常返回的标准方式。因为在用户及系统模式没有SPSR,在这2种模式下这种形式的指令无效,如果使用,则指令执行的结果是不可预知的,但汇编器在汇编时并不发生警告。 数据处理指令表如图所示:
凌阳教育,专注嵌入式人才培养多年,完善的培养方案,强大的师资,合理的课程安排,成功从小白蜕变为嵌入式工程师。想了解凌阳教育,或者获得更多嵌入式学习资料的免费下载,请点击www.sunplusedu.com访问凌阳教育官网
|