tjTednc
1:莱布尼茨的二进制和八卦tjTednc
tjTednc
在你看本文的这一刻,手机处理器中,正有千万门级别或者亿门的MOS管在关闭和打开,来实现不同的与,或,非的运算。tjTednc
这一切数学基础都要从数学最基础的原理来说起。tjTednc
tjTednc
人类从呱呱坠地开始,耳濡目染最开始就是十进制,小朋友也很容易接受,并可以很快掌握十进制的加减法。tjTednc
tjTednc
十进制非常通俗易懂,它成为了人类最早的数学基础。tjTednc
tjTednc
世界上不同的文明都出现了类似十进制的描述,例如几千年前的苏美尔楔形文字,汉字,后来的阿拉伯数字都有十进制的描述。tjTednc
tjTednc
tjTednc
tjTednc
这个不奇怪,因为人类进化了十根手指头,用手指头来数数再自然而不过了。tjTednc
tjTednc
但是,有人觉得十进制并不完美。tjTednc
tjTednc
1701年,德国数学家莱布尼茨法国科学院提交并宣读了他题为《数学科学新论》的研究论文。tjTednc
tjTednc
在这篇文章中,他提出了用0和1两个数表示全部数字的方法。tjTednc
tjTednc
tjTednc
如上表所示,每个数字都可以表示一个二进制数。二进制数中只有0和1,没有其他符号。tjTednc
tjTednc
鲁道夫·奥古斯特公爵研究莱布尼茨的二进制数学后认为二进制数学符合《圣经·创世纪》中的记载,是“上帝的算法”。因为太简洁了,符合上帝从无到有创建世界的描述。tjTednc
tjTednc
奥古斯特公爵很喜欢,但是科学院却把这篇论文给拒了。tjTednc
tjTednc
当时的法国科学院院长单内认为,看不出这篇论文有什么用处。tjTednc
论文有什么用?tjTednc
解决了什么重大问题?tjTednc
有什么实际的价值?tjTednc
tjTednc
这个思路就一直存在于审稿人的脑海里面,几百年未曾改变。tjTednc
tjTednc
那么有个问题摆在莱布尼茨的面前,二进制有什么用?tjTednc
tjTednc
作为我们300多年后的我们,对于二进制的作用是非常清楚的。但是在当时给二进制找个应用的确是个难题。tjTednc
tjTednc
但是莱布尼茨作为大数学家,大哲学家。十七世纪的亚里士多德。可以和牛顿争夺微积分发明权的大佬,肯定不会被这个小问题难住。tjTednc
tjTednc
但是用了两年时间,直到1703年莱布尼茨收到白晋所寄的伏羲八卦图,才发现自己的二进制体系与伏羲八卦图的一致性。tjTednc
白晋是法国神父,曾经担任康熙皇帝的数学老师,1697年奉康熙之名回法国招募人才,并与莱布尼茨相识,多次书信来往,白晋由此给莱布尼茨介绍了中国的易经和八卦。tjTednc
tjTednc
于是,莱布尼茨补充了本项研究意义,并发表在法国皇家科学院院刊上。tjTednc
tjTednc
标题是《二进制算术阐述-仅仅使用数字0和1兼论其效能及伏羲数字的意义》。tjTednc
tjTednc
莱布尼茨大神,打算用二进制来描述中国的八卦。tjTednc
tjTednc
tjTednc
tjTednc
对于卦象来说,一根长线代表阳爻(阳),两根短线代表阴爻(阴)。tjTednc
tjTednc
也就是阴阳。tjTednc
tjTednc
易经说:道生一,无极变太极;一生二,太极变两仪;二生三,两仪变四象;三生万物,四象旋转,世界诞生。八卦,正如其名,是对宇宙后续变化的推演。tjTednc
tjTednc
从伏羲八卦中找到二进制的意义,这个不是什么戏说。tjTednc
tjTednc
很多学者论述了,莱布尼茨不是根据八卦而发明二进制,而是发明了二进制才遇到了伏羲八卦,因此本文采用这个说法,而不牵强附会中国的八卦给了莱布尼茨发明二进制的灵感。tjTednc
tjTednc
对于莱布尼茨这个大数学家来说,二进制只是其很小的数学成就,但是却是当今信息时代存在的数学基础。tjTednc
tjTednc
我们这个信息时代都是建立在二进制上的,在这一点上,莱布尼茨居功至伟。tjTednc
但是,仅仅有二进制是不够的。tjTednc
tjTednc
tjTednc
2:布尔运算的真和假tjTednc
莱布尼茨发明了二进制。此时的二进制还只能像十进制那样运算,加减乘除。tjTednc
就是换个方式来运算,没有什么稀奇。tjTednc
而乔治·布尔则带了一种运算,那就是布尔代数。tjTednc
tjTednc
乔治·布尔,1815年出生在英格兰的林肯,少时家贫,但敏而好学,自学成才,全部的志向都放在数学上。tjTednc
tjTednc
1847年,布尔出版了《逻辑的数学分析,论演绎推理的演算法》。tjTednc
tjTednc
从此在数学界名气大震,并且从“编外人员”到有了正式的教职。tjTednc
tjTednc
1854年,他又出版了《思维规律的研究,作为逻辑与概率的数学理论的基础》,其中完满地讨论了这个主题并奠定了所谓的数理逻辑的基础。为这一学科的发展铺平了道路。tjTednc
tjTednc
布尔代数讲述内容很多,但其最典型的就是两种值和三种运算。tjTednc
tjTednc
布尔在整个计算中,定义两种值,也就是真和假。1(true),0(false)。tjTednc
tjTednc
三种基本运算,就是与(AND),或(OR),非(NOT)。tjTednc
tjTednc
与或非也可以用符号表示: & | ! 三种符号表示。tjTednc
tjTednc
tjTednc
tjTednc
tjTednc
与就是两个值都为真才为真。tjTednc
或就是两个值有一个为真就为真。tjTednc
真的非就是假,假的非就是真。tjTednc
tjTednc
这个就是两种值,三种运算的含义。tjTednc
有点哲学的意思。tjTednc
tjTednc
布尔通过研究发现:所有的数字算数运算,都可以用布尔代数化简成为 0和1的与或非操作。tjTednc
tjTednc
例如:加法a+b tjTednc
进位就是a&b,而加完后0位是(a&!b)|(b&!a)tjTednc
也就是可以用与、或、非来表示加减。tjTednc
tjTednc
tjTednc
tjTednc
二进制配合布尔代数,能够表示所有的数学运算。tjTednc
tjTednc
1864年,布尔去世。但是他发明的这些计算方式,将在100年后得到应用,成为计算机体系中的基本运算。tjTednc
用与、或、非的运算来等价表示加减乘除的运算,这个就是布尔留给后世的财富。tjTednc
tjTednc
3:香农:硕士论文和开关电路tjTednc
tjTednc
克劳德·艾尔伍德·香农是美国数学家,也是信息论的创始人。tjTednc
tjTednc
但是,在成为信息论奠基者之前,学生时代的他就发表了一篇划时代的论文。tjTednc
tjTednc
1936年,正在读硕士的香农发表了著名论文《继电器和开关电路的符号分析》。tjTednc
tjTednc
在当时能够实现开关电路的技术方案就是继电器。tjTednc
tjTednc
通过磁体通断打开或者关闭。tjTednc
如果继电器打开,电流带来磁场,继电器合上,电路闭合。tjTednc
如果继电器关闭,磁场消失,继电器关闭,电路断开。tjTednc
tjTednc
tjTednc
tjTednc
这个开关电路给了香农灵感,配合布尔代数。tjTednc
tjTednc
香农给出了布尔代数一种物理实现方式。tjTednc
tjTednc
串联的开关电路就是布尔运算的与操作,两个开关a和b都关闭,灯才能亮。tjTednc
tjTednc
这个电路就是a&btjTednc
tjTednc
tjTednc
tjTednc
tjTednc
tjTednc
tjTednc
而并联的开关电路就是布尔运算的或操作。两个开关有一个关闭,灯就会亮。tjTednc
这个电路就是a|btjTednc
tjTednc
tjTednc
tjTednc
tjTednc
是不是看起来简单极了。tjTednc
tjTednc
还没有硕士毕业的香农,奠定了现在数字电路的基础。tjTednc
布尔计算可以将任何运算化简为与、或、非。tjTednc
所以不断重复这两种电路,就可以通过电路实现任意运算。tjTednc
此时,从莱布尼茨提出了二进制,已经过去了两百多年,离布尔发表布尔运算也过去接近100年。tjTednc
tjTednc
终于,香农说,你们的数学表达,我可以用物理电路来实现了。tjTednc
这个就是现代计算机的基石。tjTednc
tjTednc
哈佛大学的霍华德·加德纳(Howard Gardner)教授评价:“这可能是本世纪最重要、最著名的一篇硕士论文。”tjTednc
tjTednc
4:晶体管和集成电路tjTednc
1947年,美国物理学家肖克利、巴丁和布拉顿三人合作发明了晶体管。tjTednc
晶体管的诞生,替代了原来的继电器,电子管等设备。tjTednc
成为了整个信息时代的基础。tjTednc
tjTednc
在晶体管发明十年后的1958年,34岁的基尔比加入德州仪器公司。然后有了把多个晶体管放到一起的想法。于是,集成电路诞生了。tjTednc
又过了十二年,1970年,第一个CPU,英特尔4004诞生了。tjTednc
这些基础都变成如下MOS管的开关电路,下图就是一个开关电路(gate)。通过控制栅极电压,实现Source和Drain的通断。tjTednc
tjTednc
tjTednc
tjTednc
时至今日,芯片的集成度不断的增加。tjTednc
最新的CPU,GPU,手机处理器等等, 其晶体管的数量都已经超过百亿级别。tjTednc
tjTednc
晶体管数量tjTednc
制程tjTednc
M1tjTednc
160亿tjTednc
5nmtjTednc
安培A100tjTednc
540亿tjTednc
7nmtjTednc
A14tjTednc
125亿tjTednc
5nmtjTednc
麒麟9000tjTednc
153亿tjTednc
5nmtjTednc
但是,其内部运行的数学逻辑,仍然是莱布尼茨提出的二进制,布尔发明的布尔计算,和香农描述的开关电路。tjTednc
tjTednc
一直没有改变!tjTednc
欢迎关注:歪睿老哥,如果你觉得本文还不错,欢迎点赞,在看,分享。tjTednc
tjTednc
<script nonce="1926365161" type="text/javascript"> var first_sceen__time = (+new Date()); if ("" == 1 && document.getElementById('js_content')) { document.getElementById('js_content').addEventListener("selectstart",function(e){ e.preventDefault(); }); } </script>tjTednc
已发送tjTednc
发送中tjTednc
微信扫一扫tjTednc
关注该公众号tjTednc