首页
社区
课程
招聘
汇编取CPU频率-- 没效果??
发表于: 2010-5-10 14:14 4220

汇编取CPU频率-- 没效果??

2010-5-10 14:14
4220
.586p
.model flat,stdcall
option casemap:none

   
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\user32.lib

include \masm32\include\kernel32.inc
include \masm32\include\user32.inc
include \masm32\include\windows.inc
;计算CPU频率
;使用如下变量
.data
hProcess   dd  ?                ;当前进程的句柄
hThread    dd  ?                ;当前线程句柄
oldPrioClass   dd  ?           ;当前线程的prioclass
oldPrio    dd  ?                  ;当前线程prio
theLoword  dd  ?              ;时间戳
theHighWord   dd   ?        ;时间戳到High

szBuffer dd  ?

.code
start:
invoke  GetCurrentProcess                       ;获取进程句柄
mov     hProcess , eax                              ;存值

invoke  GetPriorityClass,hProcess            ;得到进程的优化级
mov     oldPrioClass,eax                           ;句柄存

invoke  GetThreadPriority, hThread          ;线程优先级.
mov     oldPrio,eax                                    ; 存值

;转换程序为优先级

invoke  SetPriorityClass,hProcess,REALTIME_PRIORITY_CLASS       ;相当于100h
invoke  SetThreadPriority,hThread,THREAD_PRIORITY_TIME_CRITICAL ;等于 0Fh

invoke  Sleep,10            ;延时

RDTSC                            ;取时间戳
mov     theLoword,eax
mov     theHighWord,edx

invoke Sleep ,500           ;延时0.5秒

RDTSC                             ;取时间戳
sub     eax,theLoword       ;theloword=theloword-new loword
sbb     edx,theHighWord     ;带位减法
mov     theLoword,eax       ;新值存放
mov     theHighWord,edx     

invoke      SetThreadPriority,hThread,oldPrio             ;设置线程的优先级
invoke      SetPriorityClass,hProcess,oldPrioClass      ;设置进程的优先级 

;本计算基于上述第二个Sleep函数
;CPU 频率=Loword / (1000*延时)
mov     eax,theLoword
xor     edx,edx
mov     ebx,500000
div     ebx

mov szBuffer ,eax

invoke  MessageBox ,NULL,addr szBuffer,addr szBuffer,MB_OK

end start


照网上的代码来了一遍,结果是得出CPU频率的例子....
编译通过,运行看不到频率哦,怎么回事?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 231
活跃值: (45)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
qdk
2
我写的一个小程序
http://www.pudn.com/downloads223/sourcecode/others/detail1050469.html
2010-5-10 18:40
0
游客
登录 | 注册 方可回帖
返回
//