arm 汇编指令

参考文章:  https://www.cnblogs.com/ylhwx/p/7834969.html

 

主要的命令说明:
1、 寄存器与内存的拷贝操作 ldr、str
2、 乘法指令 mvl、mla
4、 加法、减法指令 add, sub
5、 cpsr访问指令: mrs, msr
6、 跳转指令: bl b
7、 cp15指令: mcr、 mrc
8、 算术右移、逻辑左移、右移、循环左移、循环右移、
ASR LSL LSR ROR RRX
9、 逻辑判断
AND、 ORR、 CMP、

 

ldr、str、mov 之间的区别

ldr  从内存加载到寄存器

str  从寄存器加载到内存

mov 只能用于寄存器之间的赋值或直接赋值

 

汇编伪指令的学习
.type name,@type:将符号name的type属性设为type。其中type可以是function或object
.globl == kernel export 全局可以使用
.INCBIN 文件名
INCBIN伪指令用于将一个目标文件或数据文件包含到当前的源文件中,被包含的文件不作任何变动的存放在当前文件中,编译器从其后开始继续处理
.LTORG //定义数据缓冲池
data SPACE 4200 //从当前开始分配40字节的内存单元并初始化为0

.type initrd_start,#object
.globl initrd_start
initrd_start:
.incbin INITRD
.globl initrd_end
initrd_end:

posted @   cogitoergosum  阅读(1866)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示