【发布时间】:2013-07-28 21:51:39
【问题描述】:
我在“定义”的程序集中看到了使用两种语法的“变量”,第一种看起来像标签,第二种看起来像变量名。两者可以互换使用吗,或者每个使用都有特定的原因?
例如:
msg db "Hello World",0x0a
看起来有点像 C/C++ 中的变量名,而
msg: db "Hello World",0x0a
看起来有点像 asm 或 C/C++ 中的标签。
是否有理由使用其中一种语法?
它们有什么区别?
如果我
msg: db "Text",0x0a,那么我可以mov rax, [msg]还是需要mov rax, [msg:]?
【问题讨论】:
标签: assembly nasm intel-syntax