我试图用NASM 编译以下内容
shl di
根据这个非常不粗略的来源,它应该将di
乘以2一次。然而,我得到了一个";操作码和操作数的无效组合";来自NASM。在有点挠头之后,决定使用
shl di, 1
这对NASM来说是神奇的,对我来说一切都很好,只是现在我有一个问题,因为我可以在脑海中发誓第一种形式是一件事,但也许我记错了。
那么,是哪一个呢?
显然,即使是1,NASM也需要计数。对生成的机器代码的检查表明,shl di
和shl di, 1
确实生成了相同的操作码。