c语言获取cpu序列号

⌚Time: 2022-10-17 00:51:46

👨‍💻Author: Jack Ge

这是mfc类成员函数的代码,调用汇编代码实现了获取cpu序列号的功能,可以简单的移植到c语言


CString CGetCPUIDDlg::GetCPUID()

{

    CString strCPUID;

    unsigned long s1, s2;

 

    __asm{

        mov eax, 01h

            xor edx, edx

            cpuid 

            mov s1, edx

            mov s2, eax

    }

 

    strCPUID.Format("%08X%08X", s1, s2);

    return strCPUID;

}

AI解释

mov eax, 01h      ; 设置CPUID功能号01h(获取处理器型号和特性)
xor edx, edx      ; 清零edx寄存器
cpuid             ; 执行CPUID指令
mov s1, edx       ; 将edx的值保存到变量s1中
mov s2, eax       ; 将eax的值保存到变量s2中