【发布时间】:2016-01-12 04:15:49
【问题描述】:
方括号和PTR 都表示后面的值(内存地址或寄存器值)被取消引用,从语言设计的角度来看,真的有必要让它们同时出现吗?
【问题讨论】:
-
您应该使用您所询问的 CPU 架构和汇编程序来标记您的问题(我假设 x86 和 MASM/TASM)。这似乎很相关:stackoverflow.com/questions/13790146/…
-
MASM 不区分
mov eax,label和mov eax,[label]。但是,括号仍然适用于mov eax,[ebx]或mov eax,[EQU_CONSTANT]等情况。 -
nasm例如根本不使用ptr。另请注意,没有单一的“英特尔语法”。 -
PTR 实际上是一个强制转换运算符。只需要更改操作数的类型(基本上就是它的大小),要么因为它没有,要么因为它的类型错误。