在VisualC编程中如何取得CPU的信息
Intel 486 以上的CPU,
Cyrix M1 以上的CPU,
AMD Am486 以上的CPU
(1) 取CPU OEM 字符串, 判断CPU 厂商
先让EAX=0, 再调用CPUID
Inel的CPU将返回:
EBX:756E6547H 'Genu'
EDX:49656E69H 'ineI'
ECX:6C65746EH 'ntel'
EBX,EDX,ECX 将连成"GenuineIntel", 真正的Intel。
Cyrix 的CPU 将返回:
EBX:43797269H
EDX:78496E73H
ECX:74656164H
"CyrixInstead","Cyrix 来代替"。
AMD 的CPU 将返回:
EBX:41757468H
EDX:656E7469H
ECX:63414D44H
"AuthenticAMD", 可信的AMD。
在Windows98中,用右键单击"我的电脑",选择" 属性- 常规"在计算机描述 处就可看见CPU OEM 字符串。
(2)CPU 到底是几86, 是否支持MMX
先让EAX=1,再调用CPUID
EAX的8到11位就表明是几86
3 - 386
4 - i486
5 - Pentium
6 - Pentium Pro Pentium II
2 - Dual Processors
EDX 的第0位:有无FPU
EDX的第23位:CPU是否支持IA MMX,很重要啊 !如果你想用那57条新增的指 令,先检查这一位吧,否则就等着看Windows 的"该程序执行了非法指令,将被关 闭" 吧。
(3) 专门检测是否P6架构
先让EAX=1,再调用CPUID
如果AL=1,就是Pentium Pro 或Pentium II
(4) 专门检测AMD的CPU信息
先让EAX=80000001H,再调用CPUID
如果EAX=51H, 是AMD K5
如 果EAX=66H, 是K6
EDX第0 位: 是否有FPU( 多余的 !谁用过没FPU的K5,K6?)
EDX 第23 位,CPU是否支持MMX,
程序如下:
//------CPUID Instruction Demo Program------------
#include
#include
#pragma hdrstop
//------------------------------------------------
#pragma inline
#pragma argsused
int main(int argc, char **argv)
{
char OEMString[13];
int iEAXValue,iEBXValue,iECXValue,iEDXValue;
_asm {
mov eax,0
cpuid
mov DWORD PTR OEMString,ebx
mov DWORD PTR OEMString+4,edx
mov DWORD PTR OEMString+8,ecx
mov BYTE PTR OEMString+12,0
}
cout< < "This CPU 's OEM String is:"< < OEMString< < endl;
_asm {
mov eax,1
cpuid
mov iEAXValue,eax
mov iEBXValue,ebx
mov iECXValue,ecx
mov iEDXValue,edx
}
if(iEDXValue&0x800000)
cout < < "This is MMX CPU"< < endl;
else
cout < < "None MMX Support."< < endl;
int iCPUFamily=(0xf00 & iEAXValue) > >8;
cout < < "CPU Family is:"< < iCPUFamily< < endl;
_asm{
mov eax,2
CPUID
}
if(_AL==1)
cout < < "Pentium Pro or Pentium II Found";
getch();
return 0;
}
MFC是什么意思?
“在直径较细的感应管中放置两对加热器,并将其控制在同一温度。当流体流动时,气体将上游的部分热量带给下游,而下游的加热器从上方获取热量温度上升。这时,利用上下加热器之间产生的温度差和流体的质量流量成比例的原理,来测定流量。”(附:qm=KCpA△T Cp定压比热容 A测量管绕组(即加热系统)与周围环境热交换系统...
“Microsoft Visual C 14.0 is required”问题解决方法_百度...
相信很多小伙伴在通过pip安装库时都会遇到标题所陈述的问题,那么怎么解决呢?下面小编就来为大家具体介绍。具体如下:1. 首先,在报错的命令行中找到Microsoft Visual C 的官方下载网址,如下图红框所圈处:2. 如果我们不小心清空了控制台,就打开浏览器搜索“Visual Studio 下载”,然后点击下图所示的...
求王国之心—记忆之链(GBA)的金手指
在《王国之心—记忆之链》这款游戏中,金手指是一种外挂工具,可以帮助玩家在GBA上获取各种优势,包括但不限于更高的经验值、无限的HP和CP,以及解锁全地图卡片和全事典。本文将详细介绍如何使用VBA(Visual Basic for Applications)代码来实现这些功能。首先,我们关注到的关键地址如下:HP 02039B52:...
如何安装opencv_contrib及解决其安装编译问题
使用visual studio生成带有opencv_contrib接口的opencv库,涉及打开OpenCV.sln、设定配置管理器为“release”、逐个编译CMakeTargets,并将未使用的模块如ximgproc去掉,确保编译无误。编译后生成的库文件如cv2.cp36-win_amd64.pyd,应放置在python安装目录下的lib\/site-packet\/cv2目录中。遇到报错时,检查...
CAD中的快捷键命令大全有哪些?
F4:数字化仪控制、F5:等轴测平面切换、F6:控制状态行上坐标的显示方式、F7:栅格显示模式控制、F8:正交模式控制、F9:栅格捕捉模式控制、F10:极轴模式控制、F11:对象追踪式控制、Alt+F8:宏、Alt+F11:打开Visual Basic编辑器、Ctrl+A:全部选择、Ctrl+B:栅格捕捉模式控制(F9)、Ctrl+C:将...
...命令把excel转换成dbf报microsoft excel 文件格式无效 如何...
如果 Visual FoxPro 不支持指定的 nCodePage 的值,会产生错误信息。也可以使用获取 nCodePage 的 GETCP() 函数来显示“代码页”对话框,并在对话框中指定一个代码页。如果省略了 AS nCodePage,而 Visual FoxPro 不能决定导入文件的代码页,Visual FoxPro 会复制导入文件的内容,而且在复制的同时把...
如何禁用VS2008的Intellisense
方法一:将Intellisense 禁用之!移除该文件:\\Microsoft Visual Studio 8\\VC\\vcpackages\\feacp.dll Intellisense 毕竟是个好东东,还好有VA可以做为替补。方法二:1.在“Tools|Macros|Macro Explorer”下打开Macro Explorer。2.点击Macros节点,选择 “New Macro Project” ,取名为“Intellisense”,...
如何用visual foxpro6.0中追其它表中的记录?
[SHEET cSheetName] | XL8 [SHEET cSheetName]]] [AS nCodePage]参数FileName 指定从中读入记录的文件名。如果给出的文件名中不包含扩展名,则默认为 Visual FoxPro 表,扩展名为 .dbf 。如果是从 Visual FoxPro 表中读入记录,即使当前 SET DELETED 设置为 OFF,表中标记为删除的记录也将添加到当前表中。
使用java开发代码编辑器(使用java开发代码编辑器的好处)
\/\/取得插入或者删除后影响到的单词. \/\/例如"public"在b后插入一个空格,就变成了:"public",这时就有两个单词要处理:"pub"和"lic" \/\/这时要取得的范围是pub中p前面的位置和lic中c后面的位置 intstart=indexOfWordStart(doc,pos); intend=indexOfWordEnd(doc,pos+len); charch; while(startend){ ch=get...
microsoft visual c++ 14.0 is required 怎么解决 python
原因:安装模块时出错。1、首先打开浏览器,百度搜索“下载 twisted”,找一个安全的网站打开。2、然后在弹出来的窗口中点击选择一个适合自己python版本的下载。3、然后在弹出来的窗口中点击打开“”4、然后pip install D:\\搜狗高速下载\\Twisted-17.9.0-cp36-cp36m-win_amd64.whl install后面的内容...