ASR和LSR之间的区别

时间:2016-10-22 14:25:23

标签: linux arm

右移有什么区别?我知道ASL和LSL是一样的,但我不知道ASR和LSR的区别,我试过搜索但找不到可靠的答案。

1 个答案:

答案 0 :(得分:3)

我实际上可以解释LSRASR之间的区别:

  • LSR是一个合乎逻辑的右移。它将移位,顶部位变为0.这相当于将unsigned int除以2的幂。
  • ASR是算术右移。它会改变数字,考虑到正数或负数。它实际上会移位,但最高位得到第31位的值(而不是0)。这具有将有符号整数除以2的幂的效果。