开发者

The priority of operator * in AT&T assembly language

开发者 https://www.devze.com 2022-12-25 10:59 出处:网络
Here I have a question. What is the priority of the operator * in assembly language? For example: *0x804983c(,%eax,4)

Here I have a question. What is the priority of the operator * in assembly language?

For example:

*0x804983c(,%eax,4)

Does it开发者_StackOverflow中文版 mean ( %eax * 4 ) + *0x804983c or *( %eax * 4 + 0x804983c )?

Thanks!


* is not an operator. There is no operator in assembly as such (operators are a concept only present in higher level languages).

In AT&T syntax, * is what denotes a register or memory branch target.

You're not showing the complete instruction, but assuming it was a jmp, this will jump to what is stored at 0 + %eax * 4 + 0x804983c (following the standard memory reference of offset(base,index,scale))

0

精彩评论

暂无评论...
验证码 换一张
取 消