一个Visual C++里面的函数定义的问题

来源:百度知道 编辑:UC知道 时间:2024/09/25 05:57:08
我在一本书上看见一个函数定义如下:
inline _int64 GetCPUCicle(){
_asm
{
rdtsc;
}
}
请哪位高手详细解释下GetCPUCicle函数里面的内容 谢谢
那函数中_asm{}模块是干什么用的,去掉之后只保留rdtsc不行吗?请解释一下

rdtsc全称ReaD TimeStamp Counter,timestamp counter保存的是CPU启动后执行的周期数。rdtsc把这个值存在eax:edx中,也就是默认的64位返回值的保存位置。

这个函数就是返回CPU已经执行的周期数。

另外这个在Netburst构架上不能用的。

调用汇编命令rdtsc,看来是返回一个64位整型。