ARM语法中的 移位操作如下,也是寻址的一种方法。在寻址方法中还会看到。

  • 寄存器移位寻址是ARM指令集特有的寻址方式,和寄存器寻址类似,只是操作前需要对寄存器操作数进行移位操作。

LSL:逻辑左移,移位后寄存器空出的低位补0。可以是立即数或寄存器。

LSR:逻辑右移,移位后寄存器空出的高位补0。

ASR:算术右移,移位过程中,符号位保持不变,如果源操作数是正数,则空出的高位补0,否则补1.

ROR:循环右移,类似LSR,移位后移除的低位填入空出的高位。

RRX:带扩展的循环右移,操作数右移一位,移位空出的高位用C标志的值填充。

      MOV R0, R1, LSL #2

R1寄存器左移两位赋值给R0,指令执行后,R0=R1*4。


©著作权归作者所有:来自51CTO博客作者wx607823dfcf6a9的原创作品,如需转载,请注明出处,否则将追究法律责任

更多相关文章

  1. C语言操作符
  2. [置顶] 超顺滑!优化android ListView拖拽移位
  3. android画笔移位解决
  4. Android(安卓)自定义 RadioButton 去除无谓的背景空白实例
  5. Android(安卓)TV Overscan
  6. swift横空出世
  7. android ListView和GridView拖拽移位具体实现及拓展
  8. [Android]TextUtils.ellipsize()截取指定长度字符串(附图文混排)
  9. 自定义RadioButton样式并去除默认样式位置【Android】

随机推荐

  1. HTTP2和HTTPS来不来了解一下?
  2. Java.nio VS Java.io
  3. 使用 Thread Pool 不当引发的死锁
  4. Bash On Ubuntu On Windows折腾记
  5. Java 中的构造函数引用和方法引用
  6. 深入typeclass_Haskell笔记4
  7. 【Java】留下没有基础眼泪的面试题
  8. 类型_Haskell笔记3
  9. 使用 IntelliJ 调试 Java Streams
  10. 六一儿童节,送你一个F字符串