ARM指令浅析1(mov、ldr) 您所在的位置:网站首页 汇编mvk ARM指令浅析1(mov、ldr)

ARM指令浅析1(mov、ldr)

2023-10-11 21:06| 来源: 网络整理| 查看: 265

1.环境及优化项

采用-O2优化选项,通过arm处理器架构下的gcc编译器编译用例生成汇编码查看其生成的指令。至于为什么用O2选项,是因为在某些用例中,加入-O3选项之后,arm处理器架构下gcc编译器生成的汇编会变得更加复杂(比如一个简单的循环)。

2.ARM指令格式 先简单地介绍一下ARM的指令格式,与x86(Intel)架构和alpha架构下有所不同。 基本格式

{ } {S}  , , {}

其中,内的项是必须的,{}内的项是可选的,比如是指令助记符,是必须的,而{}为 指令执行条件,是可选的,如果不写则使用默认条件AL(无条件执行)。

格式

含义

Opcode

指令助记符,如LDR,STR 等

Cond

执行条件,如EQ,NE 等

S

是否影响CPSR 寄存器的值,书写时影响CPSR,否则不影响

Rd

目标寄存器

Rn

第一个操作数的寄存器

operand2

第二个操作数

指令格式举例如下

LDR   R0,[R1] ;      读取R1 地址上的存储器单元内容,执行条件AL(无条件执行)

ADDS  R1,R1,#1 ;    加法指令,R1+1=R1 影响CPSR 寄存器,带有S

SUBNES R1,R1,#0xD;  条件执行减法运算(NE),R1-0xD=>R1,影响CPSR 寄存器,带有S



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有