__asm {
                xor eax, eax
                cpuid
                mov vendor_id, ebx
                mov vendor_id + 4, edx
                mov vendor_id + 8, ecx
                mov eax, 1
                cupid
                mov reg_eax, eax <--this line
                mov reg_edx, edx
            }


表明
错误“ opcode”中的C2400内联汇编语法错误;找到“换行符”



if (Is_HT_Supported())
        {   __asm {
            mov eax, 1
            cpuid mov reg_ebx, ebx <-- this line
            }
            return (unsigned char)((reg_ebx & NUM_LOGICAL_BITS) >> 16);
        }
        else
        {
            return (unsigned char)1;
        }


演出
错误“第一个操作数”中的C2400内联汇编语法错误;找到“,”

如何解决?我正在使用VS 2015

最佳答案

我在同一部分代码中遇到了同样的问题。然后将cupid更改为cpuid

cupid
mov reg_eax, eax <--this line


解决了这个

关于c++ - C2400内联汇编器语法错误,vs 2015,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43115587/

10-13 05:25