• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-167  評(píng)論-8  文章-0  trackbacks-0

            #include "windows.h" 
            #include "iostream"
            #include "string"

            using namespace std;

            //用來存儲(chǔ)信息
            DWORD deax;
            DWORD debx;
            DWORD decx;
            DWORD dedx;

            void ExeCPUID(DWORD veax)//初始化CPU
            {
            __asm
            {
               mov eax,veax
                cpuid
                mov deax,eax
                mov debx,ebx
                mov decx,ecx
                mov dedx,edx
            }
            }

            long GetCPUFreq()//獲取CPU頻率,單位: MHZ
            {
            int start1,start2;
            _asm rdtsc
               _asm mov start1,eax
               Sleep(50);
            _asm rdtsc
               _asm mov start2,eax
               return (start2-start1)/50000;
            }

            string GetManID()//獲取制造商信息
            {
            char ID[25];//存儲(chǔ)制造商信息
            memset(ID,0,sizeof(ID));//先清空數(shù)組 ID
            ExeCPUID(0);//初始化
            memcpy(ID+0,&debx,4);//制造商信息前四個(gè)字符復(fù)制到數(shù)組
            memcpy(ID+4,&dedx,4);//中間四個(gè)
            memcpy(ID+8,&decx,4);//最后四個(gè)
            //如果返回 char * ,會(huì)出現(xiàn)亂碼;故返回 string 值
            return string(ID);
            }

            string GetCPUType()
            {
            const DWORD id = 0x80000002; //從0x80000002開始,到0x80000004結(jié)束
            char CPUType[49];//用來存儲(chǔ)CPU型號(hào)信息
            memset(CPUType,0,sizeof(CPUType));//初始化數(shù)組

            for(DWORD t = 0 ; t < 3 ; t++ )
            {
               ExeCPUID(id+t);
               //每次循環(huán)結(jié)束,保存信息到數(shù)組
               memcpy(CPUType+16*t+ 0,&deax,4);
               memcpy(CPUType+16*t+ 4,&debx,4);
               memcpy(CPUType+16*t+ 8,&decx,4);
               memcpy(CPUType+16*t+12,&dedx,4);
            }

            return string(CPUType);
            }

            void main() 
            { 
            cout<<"本機(jī)CPU信息如下:"<<endl;
            cout<<"CPU 主 頻: "<<GetCPUFreq()<<" MHZ"<<endl;
            cout<<"CPU 制造商: "<<GetManID()<<endl;
            cout<<"CPU 型 號(hào): "<<GetCPUType()<<endl;
            cin.get();

            }

            posted on 2011-11-30 10:19 老馬驛站 閱讀(1257) 評(píng)論(0)  編輯 收藏 引用 所屬分類: c++
            欧美午夜精品久久久久久浪潮| 漂亮人妻被黑人久久精品| 国内精品伊人久久久久网站| 久久精品成人| 久久久久亚洲av无码专区| 久久国产视屏| 国内精品伊人久久久久av一坑| 久久久久黑人强伦姧人妻| 色综合久久无码中文字幕| 久久无码一区二区三区少妇 | 国产精品久久久久久久| 久久综合狠狠综合久久激情 | 2020久久精品亚洲热综合一本| 香蕉久久一区二区不卡无毒影院 | 久久久久久国产精品无码超碰| 国产精品99久久精品爆乳| 久久精品aⅴ无码中文字字幕重口| 久久一区二区三区99| 久久精品免费一区二区三区| 亚洲欧美日韩中文久久| 久久久久亚洲AV成人网人人网站| 久久国产精品免费| 9191精品国产免费久久| 好久久免费视频高清| 国产亚洲精品自在久久| 久久综合狠狠综合久久| 亚洲va久久久噜噜噜久久狠狠 | 国产亚洲精品美女久久久| 国产精品99久久久精品无码| 伊色综合久久之综合久久| 久久99精品国产麻豆不卡| 国产毛片久久久久久国产毛片| 精品久久无码中文字幕| 国产美女久久久| 久久久久中文字幕| 青草影院天堂男人久久| 一级做a爰片久久毛片16| 国产亚洲成人久久| 99久久精品无码一区二区毛片 | 伊人热热久久原色播放www| 久久综合色老色|