代码改变世界

随笔分类 -  Arm汇编

ARMv7 与 ARMv8对比

2021-06-22 14:36 by cascle, 1821 阅读, 收藏, 编辑
摘要: ARMv8指令集分为Aarch64和Aarch32指令集,而ARMv7使用的是A32和T16指令集(分别为32位和16位)。 阅读全文

ARMv7 ldr/str指令详解

2015-12-12 12:22 by cascle, 6951 阅读, 收藏, 编辑
摘要: 因为ARM的算术运算不支持直接操作内存地址,所以要把内存里的数据先加载进寄存器。ldr指令就是干这事的,称为间接取址模式。一共有3*3九种模式,先是直接偏移,先偏移,后偏移三大类,指的是如何对源操作数操作,是直接使用,还是在加载前对源操作数操作(比如地址加个数值),还是在加载后对操作数操作每个大类里... 阅读全文

PC寄存器的真实状态

2015-12-09 22:32 by cascle, 440 阅读, 收藏, 编辑
摘要: 因为预取指令的关系,PC寄存器永远比当前的寄存器多两个指令,ARM模式为大8,Thumb模式为大2,这针对的是32bit的ARMv7的指令集In ARM state, the value of the PC is the address of the current instruction plus... 阅读全文

查看32bit的ARM(比如ARMv7)反汇编

2015-12-09 22:21 by cascle, 497 阅读, 收藏, 编辑
摘要: 1.使用./arm-eabi-as test.S -o test.o编译2.使用./arm-eabi-objdump -d test.o反汇编 阅读全文
点击右上角即可分享
微信分享提示