我目前正在用c构建一个小型虚拟机,以对一个旧的16位CPU进行建模,该CPU以超慢的时钟速度(几百Khz)运行。如何限制虚拟机对操作码等的处理速度?还是我想要?
最佳答案
正如我在评论中所说,我建议使用某种计时器机制
如果您想匹配某个速度,请按以下步骤操作:
1 kHz 1000 Hz 1/s
----- * ------- * ----- therefore 1 kHz = 1000/s
1 1 kHz 1 Hz
这意味着每隔一秒钟执行1000次操作,因此请倒数来计算两次操作之间的时间,即1/1000 s或1 ms
因此,假设您要匹配125 kHz
125 kHz 1000 Hz 1/s
------- * ------- * ----- therefore 125 kHz = 125000/s
1 1 kHz 1 Hz
所以1/125000 s或.008 ms或8000 ns
希望这可以帮助!
关于c - 控制虚拟CPU的时钟速度?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13968236/