ARM伪指令
ARM伪指令
伪指令本身不能被CPU所识别,但是能被汇编器编译成一条或多条CPU所识别的指令。
ldr伪指令
ldr r0, [r1] @汇编指令
要判断是否是伪指令,只需要看指令中是否存在[]
,有[]
的是加载指令,没有的则是伪指令
ldr r0, #0x1ff
是不合法的指令
其中地址是不合法的,存在一个8bit的立即数能够循环右移偶数位得到,这个立即数就是合法的
要想执行这条本来不合法的指令,我们就可以通过伪指令实现。
1 | .code 32 |
NOP伪指令
mov r0, r0
为了优化流水线而设计的,相当于空操作
ARM伪操作
完成一些辅助功能的操作,在对汇编源程序进行汇编时由汇编程序处理,而不是在程序运行期间由机器执行。
汇编文件中的以.
开头的都是位操作
1 | .text @往下的代码放到代码段 |
字符串的比较strcmp
1 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 不愿努力的帅洋!