ARM将常数加载到寄存器方法之LDR伪指令

一、是什么?

LDR Rd,=const伪指令可在单个指令中构造任何32位数字常数,使用伪指令可以生成超过MOV和MVN指令
允许范围的常数.
实现原理:
(1)如果可以用MOV或MVN指令构造该常数,则汇编程序会生成适当的指令
(2)如果不能用MOV或MVN指令构造该常数,则汇编程序会执行下列操作
将该值放入文字池(在代码中嵌入一部分内存,用于从文字池中读取该常数)
LDR rn,pc,#offset to literal pool

二、使用步骤

1.LDR加载常数进寄存器例子

代码如下(示例):

c 复制代码
.global _start
_start:
	mov r0,#0x18
	LDR R3,=0x55555555


相关推荐
dtq04242 小时前
C语言-结构体详解
c语言·开发语言·学习
Rainy Blue8833 小时前
C转C++速成
c语言·c++·算法
执迷不悟8234 小时前
ARM--汇编指令
汇编·arm开发
exm-zem4 小时前
从C语言到C++:C++入门1
c语言·c++
牧以南歌〆7 小时前
数据结构<八>链式队列
c语言·数据结构·算法
无相求码8 小时前
数组越界为什么有时候不崩溃?VS2013 下栈上变量的幽灵布局解密
c语言·后端
天空'之城11 小时前
C 语言工业级通用组件 02:通用内存池
c语言·嵌入式·内存管理·内存池
2601_9547064911 小时前
算力上云革新移动终端:ARM 虚拟化云手机底层原理、API 自动化实战与 2026 选型全解
arm开发·智能手机·自动化
CHY_12812 小时前
Arm Ethos‑U65:YOLOv8n 模型准备与 Vela 编译
arm开发·人工智能·yolo·目标检测
十月的皮皮12 小时前
C语言学习笔记20260717-预处理机制
c语言·笔记·学习