2010-03-31 54 views
0

这里我有一个问题。汇编语言中运算符*的优先级是什么?运算符*在AT&T汇编语言中的优先级

例如:

*0x804983c(,%eax,4) 

这是否意味着(%eax * 4) + *0x804983c*(%eax * 4 + 0x804983c)

谢谢!

+0

我喜欢*(%EAX * 4 + 0x804983c),但有什么规范可以参考? – 2010-03-31 15:23:59

回答

1

*不是运营商。组装中没有操作员(操作员是只存在于高级语言中的概念)。

在AT & T语法中,*表示register or memory branch target

你不显示完整的指令,但假设它是一个JMP,这会跳到什么存储在0 + %eax * 4 + 0x804983c(以下offset(base,index,scale)标准内存引用)

+0

感谢您的回复。你说得对,前面的代码来自跳转指令。 – 2010-04-01 01:56:48