汇编语言0x2c,ARM汇编语言(4) 指令、伪操作、伪指令学习

LDR指令与LDR伪指令的4种形式:

LDR R0,[R1]:指令,将R1指向的内存地址存放的内容加载到R0中;

LDR R0,LABEL:指令,将标号LABEL所代表的内存地址处存放的内容加载到R0中;

LDR R0,=10000:伪指令,将常熟10000赋予R0,采用LDR指令+文字池的方式实现;

LDR R0,=LABEL:伪指令,将标号LABEL所代表的内存地址赋予R0;

指令部分:

伪操作部分:

符号定义伪操作:定义变量,对变量进行赋值,定义寄存器名称

GBLA:全局的算术变量,初始化为0;

GBLL:全局的逻辑变量,初始化为{FALSE};

GBLS:全局的串变量,初始化为“”;

LCLA:局部的算术变量,初始化为0;

LCLL:局部的逻辑变量,初始化为{FALSE};

LCLS:局部的串变量,初始化为“”;

SETA:给算术变量赋值;

SETL:给逻辑变量赋值;

SETS:给串变量赋值;

RLIST:为一个通用寄存器列表定义名称;

CN:为一个协处理器的寄存器定义名称;

CP:为一个协处理器定义名称;

DN:为一个双精度的VFP寄存器定义名称;

SN:为一个单精度的VFP寄存器定义名称;

FN:为一个FPA浮点寄存器定义名称;

数据定义伪操作

LTORG:声明一个数据缓冲池的开始;

MAP:定义一个结构化的内存表的首地址,同义词为^;

FIELD:定义一个结构化内存表中的数据域,同义词#;

SPACE:分配一块内存单元,并用0初始化,同义词%;

{label} SPACE exprexpr表示分配的内存字节数;

DCB:分配一段字节内存单元,并用expr初始化之,同义词=;

{label} DCB expr, {expr}...expr是-128~255的数值或字符串;

DCD,DCDU:分配一段字内存单元,分配的内存都是字对齐的,并用expr初始化之,同义词&,DCDU分配的内存单元不严格字对齐;

DCDO:分配一段字内存单

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值