如何取得cpu的型号,频率,支持的扩展指令集等信息,cpuid介绍
来源:互联网 发布:mac iphoto不能用了 编辑:程序博客网 时间:2024/06/06 19:47
作为软件开发者,我们面向的客户是多种多样的,他们使用的电脑也是各部相同的。但就cpu而言频率各不相同提供的扩展指令集也不相同,因此有时我在开发软件时需要了解客户cpu 有没支持mmx,有没支持3DNow,频率高不高,何种类型cpu,序列号是多少。为解决以上需要intel公司在80486以后提供了CPUID指令。通过调用该指令基本上可以取到有关cpu的绝大多数参数。CPUID在eax中设置值,在eax,ebx,ecx,edx中返回值。有点像中断功能调用。在eax中设置不同的值,在eax,ebx,ecx,edx中返回相应的信息。比如在eax中设置3,在ecx和edx中返回64位的cpu序列号,当然PIII以后的cpu才有唯一的序列号。
试验一下,我们可以用vc6.0,新建一个空白的Win32 Console Application 添加cpp文件如下
#include <stdio.h>
#include <string.h>
void main() {
char SerialNo[9];
_asm {
mov EAX, 0x3
CPUID
MOV dword ptr [SerialNo], EDX
MOV dword ptr [SerialNo+4], ECX
}
SerialNo[9]=0;
printf("SerialNo string: %s/n", SerialNo);
}
通过如上方法通过在eax中设置不同的“功能调用号”可以取得cpu类型,各级缓存,等等。
大家可以参考cupid的相关参考手册。在这算为大家抛砖引玉。
- 如何取得cpu的型号,频率,支持的扩展指令集等信息,cpuid介绍
- Intel CPU的CPUID指令
- Intel CPU的CPUID指令
- Intel CPU的CPUID指令
- Linux查看CPU型号及内存频率及其它信息的命令
- Linux查看CPU型号及内存频率及其它信息与清理内存的命令
- 用cpuid指令获取cpu信息
- 用cpuid指令获取cpu信息
- 汇编(指令cpuid)获取cpu信息
- 通过CPUID指令获取CPU信息
- CPUID 指令的使用
- CPUID 指令的使用
- Linux下C编程 -- 得到系统的CPU信息(cpuid)
- Linux下C编程 -- 得到系统的CPU信息(cpuid)
- 在Linux/centos下查看网卡型号,如何查看主板型号,CPU/显卡信息,硬盘型号等硬件信息
- 在Linux/centos下查看网卡型号,如何查看主板型号,CPU/显卡信息,硬盘型号等硬件信息
- 在Linux/centos下查看网卡型号,如何查看主板型号,CPU/显卡信息,硬盘型号等硬件信息
- 查看CPU支持的指令集
- Building a Robust Web Based Email Client (WebMail) Using the IP*Works! ADO.NET Data Provider(中文)
- cvs使用规范
- 游戏制作心得(一)
- VSS使用规范
- java打包详解
- 如何取得cpu的型号,频率,支持的扩展指令集等信息,cpuid介绍
- 如何有效地报告Bug[译]
- 编程实现修改注册表完成程序自启动
- 谁来帮帮我????......!!!!我急啊......谢谢各位!
- 彩信--移动通信的新亮点
- 测试Blog
- 不要再把自己当棵葱——浅谈中小资金的边缘化及对策
- ADO.NET中的多数据表操作浅析
- ado.net 学习