题目是这样的:
有一台微型PC,有1KB内存,1MHz处理器(每秒可以转换10^6次状态),问:在可以终止的程序中(没有死循环的程序中),最长的程序需要执行多少时间?写清楚思路,可以自己进行其他条件的假设。
这道题刚一看一点头绪都没有,后来从状态转换的角度进行分析得出一个思路,不保证对,仅供大家参考。
解题思路:
1KB内存,即1000B=8000bit,所以最多可以表示2^8000个状态。
因为处理器是1MHz的,即每秒10^6次状态改变,所以,极限情况(理论情况)下,最长的可终止的程序可以执行:2^8000 / 10^6 秒。
考虑,不管是什么样的循环,在循环的某一时刻都应该落入上面的某一个状态中,所以我觉得我的想法正确。