ganz genau rausfinden wieviel man an MHZ hat:
|
Quellcode
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
|
// Dateiname: main.cpp
// //////////////////////////////////////////////////////////////////////////////////
// Autor: Patrick Ullmann (c) by Xarent Interactive 2003
//
// Erstelldatum: 25.05.2003
// letzte Änderung: 25.05.2003 (Patrick) Datei wurde erstellt.
// //////////////////////////////////////////////////////////////////////////////////
// Info: Hauptdatei
// //////////////////////////////////////////////////////////////////////////////////
// I N C L U D E S //////////////////////////////////////////////////////////////////
#include <iostream>
#include <windows.h>
#include <conio.h>
// D E F I N I T I O N E N //////////////////////////////////////////////////////////
using namespace std;
// F U N K T I O N E N //////////////////////////////////////////////////////////////
DWORD getMHZ(void)
{
DWORD value1 = 0;
DWORD value2 = 0;
DWORD value3 = 0;
DWORD value4 = 0;
__asm
{
rdtsc
mov value1, eax
mov value2, edx
}
Sleep(1000);
__asm
{
rdtsc
mov value3, eax
mov value4, edx
}
value1 = value3 - value1;
value2 = value4 - value2;
double MHZ = (value1+(value2*(2^32)))/1000/1000;
return (DWORD)MHZ;
}
// M A I N - F U N K T I O N //////////////////////////////////////////////////////
int main(int argv, char* argc[])
{
cout << "Wert 0: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 1: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 2: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 3: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 4: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 5: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 6: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 7: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 8: " << (int)getMHZ() << " MHZ"<<endl;
cout << "Wert 9: " << (int)getMHZ() << " MHZ"<<endl;
getch();
return 0;
}
|
Dauert nur 10 sec. dann hat man 10 extrem nah aneinanderliegende werte aus denen kann man dann den durchschnitt errechnen. Oder man fürt nur einmal getMHZ(); aus was aus recht genau ist.
p.s.: die getMHZ(); funktion ist net von mir :angel: