清问如何取得CPU的ID号

解决方案 »

  1.   

    http://expert.csdn.net/Expert/topic/2976/2976025.xml?temp=.7212335
      

  2.   

    下面是得到CPU的型号,有些CPU是没有ID的,例如Intel的。void main()
    {
    printf("start: \n");

    char szName[64] = {0};

    __asm
    {
    mov      eax, 0x80000002
    CPUID
    mov      DWORD PTR [szName+0],eax
    mov      DWORD PTR [szName+4],ebx
    mov      DWORD PTR [szName+8],ecx
    mov      DWORD PTR [szName+12],edx
    mov      eax, 0x80000003
    CPUID
    mov      DWORD PTR [szName+16],eax
    mov      DWORD PTR [szName+20],ebx
    mov      DWORD PTR [szName+24],ecx
    mov      DWORD PTR [szName+28],edx
    mov      eax, 0x80000004
    CPUID
    mov      DWORD PTR [szName+32],eax
    mov      DWORD PTR [szName+36],ebx
    mov      DWORD PTR [szName+40],ecx
    mov      DWORD PTR [szName+44],edx
    }

    printf("cpu = %s\n", szName); getchar();
    }