16(%esp)真的违反直觉[esp+16]吗?是不是更合乎逻辑:
eax = 5
mov eax, 5
Run Code Online (Sandbox Code Playgroud)
at at&t是:
mov 5, eax
5 = a (? wait what ?)
Run Code Online (Sandbox Code Playgroud)
注意:我不是想乱跑.我只是不明白他们所做的设计选择,我试图了解他们为什么做了他们所做的.
是否有定义汇编语言的语法和语义的标准?同样,语言C有ISO标准,语言C#有ECMA标准吗?是否只有一个标准,还是更多标准?
我这么问是因为我注意到的是汇编语言代码,看着不同的的Windows和Linux的环境.我希望汇编语言不依赖于OS,它只是具有一些定义标准的语言,并且汇编程序(汇编语言的编译器)被翻译成特定处理器的机器指令.
谢谢你的答案