ページ 1 / 1
時間のことについて
Posted: 2011年2月01日(火) 21:53
by まさかりたろう
こんばんは。
質問があるのですが、 現在ゲームプログラミングの館の『 8. 時間を取得する。 』をやっているのですが、
なぜ GetNowCount() - time を実行すると、a++の処理時間が測れるのですか?
一度理解しかけたのですが、考えすぎてまたわからなくなってしまいました。
どうかご教授お願いいたします。
Re: 時間のことについて
Posted: 2011年2月01日(火) 22:18
by ひよこ
最初の時間をtime1として測った後の時間をtime2とします。
簡単な例ではストップウォッチでtime1を0秒として50M走などを走った結果8秒とかをtime2とします。
これでtime2-time1は走り切るのにかかった時間(経過した時間)となります。
プログラムの方は
GetNowCount();でまず基準となる時間(time)を決めます。
ある処理をした時間で、その後に時間を測る(GetNowCount()-time)ことである処理にかかった時間を出すことができます。
これでわかりますかね?
Re: 時間のことについて
Posted: 2011年2月01日(火) 22:18
by bitter_fox

- 02.png (6.44 KiB) 閲覧数: 1658 回
このような横軸が時間のグラフを書いてみました。
黄色い所が
コード:
for(i=0;i<100000;i++) //10万回a++;を実行
a++;
の処理をしている間に当たります。
でA点はtime = GetNowCount()に当たり、
B点がインクリメント処理後のGetNowCount()に当たります。
黄色い区間の値をを出すにはB点-A点なので、
GetNowCount() - timeになります。
Re: 時間のことについて
Posted: 2011年2月01日(火) 22:27
by まさかりたろう
>>ひよこ様
>> bitter_fox様
ご教授ありがとうございます!
最初のGetNowCountはプログラムを実行した時点での時間で、それからaを処理した後の時間を引くということですね!!
すごくわかりやすかったです!!
ありがとうございました!