C2400 内联汇编程序语法错误,与 2015 年

C2400 inline assembler syntax error, vs 2015

本文关键字:2015 错误 语法 汇编程序 C2400      更新时间:2023-10-16
__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 
            }

它显示错误 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

解决了这个问题