我正在解释一些IA-32汇编代码。这就是它的内容:
.data
.align 4
A: .long 10, 40, 20, 50, 30
.text
main:
movl $0x75, %eax
sarl $3, %eax
我知道这是一个算术右移,但我找不到任何例子。有人可以帮我解决这个问题吗?我不确定需要对一个“右移”的数字做些什么。感谢。
答案 0 :(得分:1)
N位的右移与2 ^ N的整数除法相同。所以你要将eax
除以2 ^ 3,即8。
在这种情况下,逻辑右移将产生相同的结果,因为eax
的最高有效位为零(0x75的32位二进制表示为00000000000000000000000001110101)。