青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

兔子的技術博客

兔子

   :: 首頁 :: 聯系 :: 聚合  :: 管理
  202 Posts :: 0 Stories :: 43 Comments :: 0 Trackbacks

留言簿(10)

最新評論

閱讀排行榜

評論排行榜

獲得程序或者一段代碼運行的時間

 (2006-06-14 09:49:11)
如何獲得程序或者一段代碼運行的時間?你可能說有專門的程序測試工具,確實,不過你也可以在程序中嵌入匯編代碼來實現。
     在Pentium的指令系統中有一條指令可以獲得CPU內部64位計數器的值,我們可以通過代碼兩次獲取該計數器的值而獲得程序或代碼運行的時鐘周期數,進而通過你的cpu的頻率算出一個時鐘周期的時間,從而算出程序運行的確切時間。
    我們通過指令TDSIC來獲得cpu內部計數器的值,指令TDSIC返回值放在EDX:EAX中,其中EDX中存放64位寄存器中高32位的值,EAX存放第32位的值.
    下面看看實現的代碼:
 
//用匯編實現獲取一段代碼運行的時間
#include<iostream>
using namespace std;
void GetClockNumber (long high, long low);
void GetRunTime();
int main()
     
long HighStart,LowStart,HighEnd,LowEnd;
long numhigh,numlow;
//獲取代碼運行開始時cpu內部計數器的值
__asm             
{
  RDTSC
  mov HighStart, edx
  mov LowStart, eax
}
for(int i= 0; i<100000; i++ )
{
             for(int i= 0; i<100000; i++ )
      {
      
      }
}
 
 
 

  //獲取代碼結束時cpu內部計數器的值,并減去初值
        __asm
{
  RDTSC
  mov HighEnd, edx
  Mov LowEnd,  eax
  ;獲取兩次計數器值得差
  sub eax,  LowStart
  cmp    eax,  0       ; 如果低32的差為負則求返,因為第二次取得永遠比第一次的大
  jg     L1
  neg     eax
  jmp     L2
            L1: mov numlow,  eax
            L2: sbb edx,  HighStart
  mov numhigh, edx
 
}
        //把兩個計數器值之差放在一個64位的整形變量中
        //先把高32位左移32位放在64的整形變量中,然后再加上低32位
__int64  timer =(numhigh<<32) + numlow;
         //輸出代碼段運行的時鐘周期數
         //以頻率1.1Gcpu為例,如果換計算機把其中的1.1改乘其它即可,因為相信大家的cpu都應該在1G以上  ^_^
cout<< (double) (timer /1.1/1000000000) << endl;
return 0;
}

     這樣通過一條簡單的匯編指令就可以獲得程序或一段代碼的大概時間,不過并不能得到運行的確切時間,因為即使去掉中間的循環,程序也會有個運行時間,
因為在第一次取得計數器的值后,有兩條匯編指令mov HighStart, edx       mov LowStart, eax這兩條指令當然也有運行時間 ,當然你可以減去這兩條指令的運行時間(在1.1G的機子上是3e-8s),這樣會更精確一點。
    如果你要確切知道程序的運行時間,專業的測試軟件肯定會更好一點,不過好像一般沒有必要獲取除非專門的要求的程序。
    不過能DIY一個也是不錯的,不管有沒有,最起碼你可以學到在VC++中如何嵌入匯編代碼以及如何使用32位的寄存器,其實和16位的寄存器一樣使用,將來64的也應該一樣,只不過位數不同罷了。
posted on 2012-02-22 16:08 會飛的兔子 閱讀(1427) 評論(0)  編輯 收藏 引用 所屬分類: 系統API,底層技術
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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>
            亚洲欧美日韩国产综合在线| 亚洲黄色一区| 亚洲欧美春色| 国产精品人人爽人人做我的可爱| 亚洲欧美日本国产专区一区| 亚洲视频一区| 狠狠色伊人亚洲综合成人| 免费久久99精品国产自| 男女av一区三区二区色多| 99re6这里只有精品| 一区二区毛片| 国产一区二区久久| 亚洲国产成人久久综合一区| 欧美日韩激情小视频| 欧美一级在线播放| 久久青青草综合| 中文久久精品| 久久精品国产精品| 夜夜嗨av一区二区三区网页| 亚洲欧美日产图| 亚洲人成绝费网站色www| 亚洲一区二区三区在线观看视频| 国产精品男gay被猛男狂揉视频| 欧美一级视频| 老司机67194精品线观看| 亚洲一区在线免费| 鲁大师成人一区二区三区| 一本色道久久综合亚洲91| 亚洲一区在线观看免费观看电影高清| 又紧又大又爽精品一区二区| 宅男噜噜噜66国产日韩在线观看| 韩国成人理伦片免费播放| 亚洲欧洲一区二区三区久久| 国产日韩欧美精品综合| 最新国产成人在线观看| 国产欧美日韩在线| 日韩视频免费看| 亚洲国产精品视频一区| 午夜久久tv| 亚洲一区二区少妇| 欧美国产综合视频| 欧美成年人网站| 国产亚洲人成网站在线观看| 中国女人久久久| 亚洲人成7777| 免费国产一区二区| 久久久久国产精品厨房| 国产精品日韩电影| 亚洲天堂久久| 一区二区久久| 欧美国产第二页| 欧美国产日韩精品| 在线看成人片| 久久久xxx| 久久久人人人| 激情欧美亚洲| 久久高清一区| 免费在线观看成人av| 狠狠色狠狠色综合日日tαg| 久久成人资源| 久久久久久久久久久成人| 国产欧美精品在线| 亚洲免费视频中文字幕| 欧美亚洲三区| 国产亚洲精品美女| 欧美一级久久久| 久久亚洲私人国产精品va| 国产亚洲福利| 久久精品国产综合精品| 麻豆av福利av久久av| 在线成人av| 欧美成人69av| 夜夜爽夜夜爽精品视频| 西瓜成人精品人成网站| 国产日韩精品一区观看| 欧美在线观看视频在线| 免费高清在线一区| 亚洲精品一区二区三区av| 欧美日韩亚洲一区二区三区| 亚洲影院免费观看| 久久久久久久久久看片| 亚洲国产成人av好男人在线观看| 欧美成人a∨高清免费观看| 亚洲裸体俱乐部裸体舞表演av| 亚洲线精品一区二区三区八戒| 国产精品青草久久久久福利99| 欧美亚洲综合在线| 99精品视频免费观看| 欧美亚州韩日在线看免费版国语版| 亚洲一区综合| 免费在线观看日韩欧美| 中文一区字幕| 国产一区二区三区的电影 | 宅男精品导航| 国产老肥熟一区二区三区| 久久久久久婷| 亚洲免费福利视频| 久热精品视频在线观看| 亚洲免费观看高清完整版在线观看| 国产精品久久久一区麻豆最新章节 | 亚洲国产精品va| 国产精品qvod| 久久综合导航| 午夜精品视频| 亚洲美女一区| 欧美大胆人体视频| 欧美亚洲在线播放| 日韩视频免费观看| 国产亚洲精品高潮| 欧美午夜视频网站| 久久中文在线| 欧美中文字幕视频在线观看| 亚洲人体一区| 久久尤物电影视频在线观看| 亚洲天堂成人| 99精品福利视频| 影音先锋久久久| 国产欧美一级| 欧美手机在线| 欧美精品免费播放| 久久午夜精品一区二区| 欧美在线观看网址综合| 亚洲网站视频福利| aa日韩免费精品视频一| 亚洲第一页中文字幕| 久久亚洲综合色| 久久国产精品一区二区三区四区 | 国产自产在线视频一区| 国产精品日韩电影| 国产精品国产三级国产aⅴ入口| 欧美成人亚洲成人| 免费欧美网站| 美乳少妇欧美精品| 久久性色av| 老司机一区二区三区| 久久精品夜色噜噜亚洲aⅴ| 欧美一区二区在线免费观看| 亚洲一区二区av电影| 一区二区日韩| 中文亚洲字幕| 亚洲一区二区视频在线| 亚洲精品久久久久中文字幕欢迎你| 欧美激情四色| 亚洲啪啪91| 日韩午夜av| 亚洲免费视频一区二区| 午夜在线精品偷拍| 亚欧成人在线| 久久久久久伊人| 蜜臀av一级做a爰片久久| 猫咪成人在线观看| 欧美aⅴ99久久黑人专区| 欧美精品国产一区| 国产精品v欧美精品v日韩精品| 国产精品爽爽爽| 国内精品久久久久久久果冻传媒 | 宅男精品视频| 国模私拍视频一区| 亚洲国产成人久久| 亚洲人永久免费| 亚洲性av在线| 久久精品国产清高在天天线| 久久久青草青青国产亚洲免观| 欧美二区在线| 制服丝袜亚洲播放| 久久爱www.| 欧美韩日视频| 国产日韩欧美视频| 亚洲高清在线| 亚洲欧美日本另类| 久久一区二区三区av| 亚洲人成亚洲人成在线观看| 亚洲深夜福利网站| 久久久综合网站| 国产精品久久久久久久久果冻传媒| 国产一区二区看久久| 日韩天堂av| 久久人91精品久久久久久不卡| 亚洲国产精品一区二区www| 亚洲制服丝袜在线| 久久亚洲国产精品一区二区| 欧美日韩中文在线观看| 激情亚洲网站| 亚洲综合大片69999| 嫩模写真一区二区三区三州| 亚洲一区二区欧美日韩| 蜜臀av国产精品久久久久| 国产欧美精品在线播放| a4yy欧美一区二区三区| 老司机午夜精品视频| 在线中文字幕不卡| 你懂的国产精品永久在线| 国产欧美一区二区三区久久| 亚洲精品中文在线| 狼人社综合社区| 亚洲欧美日韩精品久久久| 欧美肉体xxxx裸体137大胆| 亚洲激情视频在线播放| 久久亚洲综合| 欧美在线免费一级片|