ここに質問があります。アセンブリ言語での演算子*の優先順位は何ですか?
例えば:
*0x804983c(,%eax,4)
それは意味( %eax * 4 ) + *0x804983c
ですか*( %eax * 4 + 0x804983c )
?
ありがとう!
ここに質問があります。アセンブリ言語での演算子*の優先順位は何ですか?
例えば:
*0x804983c(,%eax,4)
それは意味( %eax * 4 ) + *0x804983c
ですか*( %eax * 4 + 0x804983c )
?
ありがとう!
*
演算子ではありません。アセンブリ自体には演算子はありません (演算子は高水準言語にのみ存在する概念です)。
AT&T の構文では、* はレジスタまたはメモリの分岐先を表します。
あなたは完全な命令を示していませんが、それがjmpであると仮定すると、これは格納されているものにジャンプし0 + %eax * 4 + 0x804983c
ます(の標準メモリ参照に従ってoffset(base,index,scale)
)