__asm
{
mov bl, byte [0x0068F51C]
call 0x004523C0
}
此代码提供此错误:
main.cpp(57): error C2400: inline assembler syntax error in 'second operand'; found '['
main.cpp(58): error C2415: improper operand type
第57行是mov指令的行。我不知道我在这里做错了什么,特别是通话指令。有人可以告诉我如何删除此错误吗?
答案 0 :(得分:2)
显而易见的问题是为什么你认为你想要这样做。对于第一条指令,问题纯粹是语法上的,而且很容易解决:
mov bl, byte ptr [0x0068F51C]
有几种方法可以修复第二条指令。一种可能性是这样的:
mov eax, 0x004523C0
call [eax]
调用任意地址的更干净/更直接的方法使用我认为内联汇编程序不支持的汇编程序指令,所以至少我不确定是否有更清晰的方法来处理这个特定的地址。 / p>