DOS下和WINDOWS下用CPUID读CPU信息

一 :WINDOWS下,用VC++来编译。

         格式:   unsigned long DBase;
char cA[13];
char cB[49];
_asm
  {
    xor eax, eax
    cpuid
    mov DBase      ,eax
    mov dword ptr cA    ,ebx
    mov dword ptr cA+4  ,edx 
    mov dword ptr cA+8  ,ecx 


    mov eax, 0x80000002
    cpuid
    mov dword ptr cB    , eax
    mov dword ptr cB + 4  , ebx
    mov dword ptr cB + 8  , ecx
    mov dword ptr cB + 12  ,edx

    mov eax, 0x80000003
    cpuid
    mov dword ptr cB + 16  , eax
    mov dword ptr cB + 20  , ebx
    mov dword ptr cB + 24  , ecx
    mov dword ptr cB + 28  , edx

    mov eax, 0x80000004
    cpuid
    mov dword ptr cB + 32  , eax
    mov dword ptr cB + 36  , ebx
    mov dword ptr cB + 40  , ecx
    mov dword ptr cB + 44  , edx
  }

二:DOS下,需要用DJGPP来编译(支持32位)。

          格式:

#define CPUID(op,a,b,c,d)  /
__asm__ __volatile__("cpuid":"=a"(a),"=b"(b),"=c"(c),"=d"(d):"a"(op))

 

 MSN:   twinliwu@hotmail.com

        

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值