ʹÓÃC++±à³ÌÈ¡µÃCPUÐÅÏ¢_C/C++ÓïÑÔ_ºÚ¿Í·ÀÏßÍø°²·þÎñÆ÷ά»¤»ùµØ--Powered by WWW.RONGSEN.COM.CN

ʹÓÃC++±à³ÌÈ¡µÃCPUÐÅÏ¢

×÷ÕߣººÚ¿Í·ÀÏßÍø°²C/C++½Ì³Ì»ùµØ À´Ô´£ººÚ¿Í·ÀÏßÍø°²C/C++½Ì³Ì»ùµØ ä¯ÀÀ´ÎÊý£º0

±¾Æª¹Ø¼ü´Ê£ºÐÅϢȡµÃ±à³ÌʹÓÃ
ºÚ¿Í·ÀÏßÍø°²ÍøѶ£º¡¡ÀûÓÃÀûÓÃCPUID »ã±àÖ¸Á»úÆ÷Â룺0FH A2H, Èç¹ûÄãµÄ±àÒëÆ÷²»Ö§³ÖCPUID Ö¸ÁֻÓÐemit »úÆ÷ÂëÁË£©£¬ ¸ÃÖ¸Áî¿ÉÒÔ±»ÈçÏÂCPUʶ±ð£º¡¡¡¡Intel 486 ÒÔÉϵÄCPU,¡¡¡¡Cyrix M1 ÒÔÉϵÄCPU,¡¡¡¡AMD...
¡¡ÀûÓÃÀûÓÃCPUID »ã±àÖ¸Á»úÆ÷Â룺0FH A2H, Èç¹ûÄãµÄ±àÒëÆ÷²»Ö§³ÖCPUID Ö¸ÁֻÓÐemit »úÆ÷ÂëÁË£©£¬ ¸ÃÖ¸Áî¿ÉÒÔ±»ÈçÏÂ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;
¡¡¡¡}
    ºÚ¿Í·ÀÏßÍø°²·þÎñÆ÷ά»¤·½°¸±¾ÆªÁ¬½Ó£ºhttp://www.rongsen.com.cn/show-15471-1.html
Íøվά»¤½Ì³Ì¸üÐÂʱ¼ä:2012-04-04 22:55:16  ¡¾´òÓ¡´ËÒ³¡¿  ¡¾¹Ø±Õ¡¿
ÎÒÒªÉêÇë±¾Õ¾£ºNµã | ºÚ¿Í·ÀÏß¹ÙÍø |  
רҵ·þÎñÆ÷ά»¤¼°Íøվά»¤ÊÖ¹¤°²È«´î½¨»·¾³£¬ÍøÕ¾°²È«¼Ó¹Ì·þÎñ¡£ºÚ¿Í·ÀÏßÍø°²·þÎñÆ÷ά»¤»ùµØÕÐÉ̽øÐÐÖУ¡QQ:29769479

footer  footer  footer  footer