时钟周期

分享一个单机软件试用期计时思路

1.首次启动软件时,先获取自己软件写入的注册表项,如果已经存在了,再获取记录的时钟周期数,如果不存在的话,获取主机自cpu上电以来的时钟周期数,已纳秒为单位,然后把这个数保存到电脑自己的注册项里。 2.以后每次启动软件,都获取自cpu上电以来的时钟周期数,然后再去读取首次写入的那个数值。 3.两两相减,计算出的时间差就是软件再这台主机上存在的天数的纳秒值。...

Intel Core Microarchitecture Pipeline

Intel微处理器近20年从Pentium发展到Skylake,得益于制作工艺上的巨大发展,处理器的性能得到了非常大的增强,功能模块增多,不过其指令处理pipeline的主干部分算不上有特别大的变化,更多的是为了提高指令的处理速度添加一些模块以及各模块的增强与优化。 本文会以Intel Core微处理器架构为例去了解Intel微处理器pipeline的各个...

DDR工作原理【转】

转自:https://www.cnblogs.com/shengansong/archive/2012/09/01/2666213.html DDR SDRAM全称为Double Data Rate SDRAM,中文名为“双倍数据流SDRAM”。DDR SDRAM在原有的SDRAM的基础上改进而来。也正因为如此,DDR能够凭借着转产成本优势来打败昔日的对手...

汇编效率优化:指令处理机制

大多数情况下,编写程序都不会使用汇编语言而是使用高级语言,原因大致有以下几点: 花费更多时间。高级语言的一行相当于汇编语言的几行、几十行甚至更多。 不够安全。比如说在进行函数调用时PUSH与POP必须成对出现,高级语言中的函数调用会自动为你执行PUSH与POP的操作,但是汇编语言中就必须由程序员自己保证PUSH与POP一致,否则会导致栈错乱,使得程序出现...