现代的CPU能包含上百亿晶体管!1978年的intel 8086 CPU只有29000个晶体管。
有没有比29000更简单的?本文讨论的是:真值表计算机(Truth Table Computer)。
如图,一块电路有7个端口,分别是输入A, B,输出C,真值表(在下端)。它可以模拟出一个门电路的所有16种情况。
CPU里只有1个这样的电路,CPU能完成如下的汇编指令:
load A, [10254]
load B, [25837]
exe 1000
store C, [99874]
指令集只有4条指令,相当简单。
理论上讲,用这个计算机能完成任意计算任务。
只是速度慢了一点,例如,它需要用软件的形式模拟一个加法器,每执行一条指令,就要调用一次加法器函数,那叫一个慢啊!
以上仅为理论研究,并不是真的要使用如此缓慢的方式进行计算。为了让TTC快一点的研究,可用于实践。例如:
上述4条指令可看做一个整体,这样一来就能减少加法器的调用。
研究怎么并行运算,这绝对是一个绝佳的模型。就像编译原理优化程序前,需要把程序转化为中间代码,然后针对中间代码进行优化一样。
编译原理龙书上说:有“硅编译器”,即将源代码转化为电路的编译器。有了它,就能制作出TTC的编译器。
总结:
真值表计算机(TTC)是一个理论模型,有研究价值。