ASM x86 - 左移

时间:2012-11-19 03:50:39

标签: assembly shift

我遇到了一个相当简单的问题(我认为)...... 这是我的代码:

    mov eax, 0b
    mov bl, 0b
    mov dl, BYTE PTR[esp + 4 + 3]

LOOP1:
    mov cl, dl// byte 1
    shl cl, bl

当我打电话给我时,我得到了一个不正确的操作数类型......我做错了什么?

1 个答案:

答案 0 :(得分:4)

SHL运算符只允许移位1,或者移位CL寄存器的内容。

也许你打算:

  SHL   BL, CL

将BL寄存器移位CL中的数量。