位置:51电子网 » 技术资料 » 嵌入式系统

ARM指令介绍

发布时间:2008/12/22 0:00:00 访问次数:598

  一条典型的arm指令语法格式如下所示。

  其中:

  ●opcode是指令操作符编码:

  ·cond是指令执行的条件编码;

  ·s决定指令的操作是否影响cpsr的值;

  ·rd是目标寄存器编码;

  ·rn是包含第1个操作数的寄存器编码;

  ●shifte_operand表示第2个操作数。

  对应地转换成一条典型的arm指令编码格式如下(arm指令字长为固定的32位)。

  在arm指令中,第2个操作数(shifter_operand)有多种表示方法。

  1.常数表达式#immed_8r

  该常数必须对应8位位图,即常数是由一个8位的常数循环移位偶数位得到的。合法常量:

  2.寄存器方式rm

  在寄存器方式下操作数即为寄存器的数值。

  寄存器方式应用举例:

  3.寄存器移位方式rm,shift

  将寄存器的移位结果作为操作数,但rm的值保存不变。移位方法如下:

  其中type为asr、lsl、lsr、asl中的一种,rs为偏移量寄存器,低8位有效,其值如果大于或等于32,则第2个操作数的结果为0(asr、ror例外)

  寄存器移位方式应用举例:

  注意:r15是处理器的程序计数器pc,一般不要对其操作,而且有些指令是不允许使用r15的,如umull指令。

  欢迎转载,信息来源维库电子市场网(www.dzsc.com)



  一条典型的arm指令语法格式如下所示。

  其中:

  ●opcode是指令操作符编码:

  ·cond是指令执行的条件编码;

  ·s决定指令的操作是否影响cpsr的值;

  ·rd是目标寄存器编码;

  ·rn是包含第1个操作数的寄存器编码;

  ●shifte_operand表示第2个操作数。

  对应地转换成一条典型的arm指令编码格式如下(arm指令字长为固定的32位)。

  在arm指令中,第2个操作数(shifter_operand)有多种表示方法。

  1.常数表达式#immed_8r

  该常数必须对应8位位图,即常数是由一个8位的常数循环移位偶数位得到的。合法常量:

  2.寄存器方式rm

  在寄存器方式下操作数即为寄存器的数值。

  寄存器方式应用举例:

  3.寄存器移位方式rm,shift

  将寄存器的移位结果作为操作数,但rm的值保存不变。移位方法如下:

  其中type为asr、lsl、lsr、asl中的一种,rs为偏移量寄存器,低8位有效,其值如果大于或等于32,则第2个操作数的结果为0(asr、ror例外)

  寄存器移位方式应用举例:

  注意:r15是处理器的程序计数器pc,一般不要对其操作,而且有些指令是不允许使用r15的,如umull指令。

  欢迎转载,信息来源维库电子市场网(www.dzsc.com)



上一篇:ARM指令集

上一篇:FIQ异常的描述

相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!