中央音乐学院电子音乐:怎么用处理器的温度作随机数种子?

来源:百度文库 编辑:高考问答 时间:2024/05/03 23:06:04
有人说可以用奔腾3的温度作种子
怎么作啊??麻烦说详细点

这个随机种子是处理器支持产生随机数操作时自动使用的,大家就不必操心啦~详情见下文:

根据Randomize的工作原理,利用函数Timer得到从午夜开始到现在经过的秒数,然后再根据要得到的随机数值大小对该数值进行""衰减"处理,这样得到的数值则可称得上是真正意义的随机数值,但这是人为的方法,有它的确定性和周期性,称不上是真正的随机数,单纯改变伪随机数的生成逻辑计算方法并不能达到目的,最有效的办法只能是改变rand_seed,就是种子。而且,改变后的rand_seed不应该是人为的。目前,在 Intel 的PIII处理器中内置了一个与CPU温度相关的随机数生成器,算是一个比较有效的种子生成器。更好的办法是根据"随机事件"生成随机数,如键盘和鼠标输入值、中断、磁盘读取等等。然而,许多服务器没有键盘和鼠标,许多"黑盒"产品也不带有硬盘,因此很难找到好的随机数源,当然,通讯密钥也就一样不安全。而如网络状态等也不能很好地保证随机数的"随机性"。电器噪声和声音频率也许是很好的随机数源,但大多数人恐怕并不愿意在计算机中增加这种设备,而且也可能出现设备失灵和外部操纵(影响)等问题。对于要处理大量连接的网关服务器,是必须要考虑的问题。如果可以通过,精确检测机器cpu的通电电流强度,来作为随机数种子,或是其他一些没有人为因素的干扰的,且瞬间变化快的方法获得种子,必将能产生符和要求的随机数。