1:莱布尼茨的二进制和八卦

在你看本文的这一刻,手机处理器中,正有千万门级别或者亿门的MOS管在关闭和打开,来实现不同的与,或,非的运算。

这一切数学基础都要从数学最基础的原理来说起。

人类从呱呱坠地开始,耳濡目染最开始就是十进制,小朋友也很容易接受,并可以很快掌握十进制的加减法。

十进制非常通俗易懂,它成为了人类最早的数学基础。

世界上不同的文明都出现了类似十进制的描述,例如几千年前的苏美尔楔形文字,汉字,后来的阿拉伯数字都有十进制的描述。

这个不奇怪,因为人类进化了十根手指头,用手指头来数数再自然而不过了。

但是,有人觉得十进制并不完美。

1701年,德国数学家莱布尼茨法国科学院提交并宣读了他题为《数学科学新论》的研究论文。

在这篇文章中,他提出了用0和1两个数表示全部数字的方法。

如上表所示,每个数字都可以表示一个二进制数。二进制数中只有0和1,没有其他符号。

鲁道夫·奥古斯特公爵研究莱布尼茨的二进制数学后认为二进制数学符合《圣经·创世纪》中的记载,是“上帝的算法”。因为太简洁了,符合上帝从无到有创建世界的描述。

奥古斯特公爵很喜欢,但是科学院却把这篇论文给拒了。

当时的法国科学院院长单内认为,看不出这篇论文有什么用处。

论文有什么用?

解决了什么重大问题?

有什么实际的价值?

这个思路就一直存在于审稿人的脑海里面,几百年未曾改变。

那么有个问题摆在莱布尼茨的面前,二进制有什么用?

作为我们300多年后的我们,对于二进制的作用是非常清楚的。但是在当时给二进制找个应用的确是个难题。

但是莱布尼茨作为大数学家,大哲学家。十七世纪的亚里士多德。可以和牛顿争夺微积分发明权的大佬,肯定不会被这个小问题难住。

但是用了两年时间,直到1703年莱布尼茨收到白晋所寄的伏羲八卦图,才发现自己的二进制体系与伏羲八卦图的一致性。

白晋是法国神父,曾经担任康熙皇帝的数学老师,1697年奉康熙之名回法国招募人才,并与莱布尼茨相识,多次书信来往,白晋由此给莱布尼茨介绍了中国的易经和八卦。

于是,莱布尼茨补充了本项研究意义,并发表在法国皇家科学院院刊上。

标题是《二进制算术阐述-仅仅使用数字0和1兼论其效能及伏羲数字的意义》。

莱布尼茨大神,打算用二进制来描述中国的八卦。

对于卦象来说,一根长线代表阳爻(阳),两根短线代表阴爻(阴)。

也就是阴阳。

易经说:道生一,无极变太极;一生二,太极变两仪;二生三,两仪变四象;三生万物,四象旋转,世界诞生。八卦,正如其名,是对宇宙后续变化的推演。

从伏羲八卦中找到二进制的意义,这个不是什么戏说。

很多学者论述了,莱布尼茨不是根据八卦而发明二进制,而是发明了二进制才遇到了伏羲八卦,因此本文采用这个说法,而不牵强附会中国的八卦给了莱布尼茨发明二进制的灵感。

对于莱布尼茨这个大数学家来说,二进制只是其很小的数学成就,但是却是当今信息时代存在的数学基础。

我们这个信息时代都是建立在二进制上的,在这一点上,莱布尼茨居功至伟。

但是,仅仅有二进制是不够的。

2:布尔运算的真和假

莱布尼茨发明了二进制。此时的二进制还只能像十进制那样运算,加减乘除。

就是换个方式来运算,没有什么稀奇。

而乔治·布尔则带了一种运算,那就是布尔代数。

乔治·布尔,1815年出生在英格兰的林肯,少时家贫,但敏而好学,自学成才,全部的志向都放在数学上。

1847年,布尔出版了《逻辑的数学分析,论演绎推理的演算法》。

从此在数学界名气大震,并且从“编外人员”到有了正式的教职。

1854年,他又出版了《思维规律的研究,作为逻辑与概率的数学理论的基础》,其中完满地讨论了这个主题并奠定了所谓的数理逻辑的基础。为这一学科的发展铺平了道路。

布尔代数讲述内容很多,但其最典型的就是两种值和三种运算。

布尔在整个计算中,定义两种值,也就是真和假。1(true),0(false)。

三种基本运算,就是与(AND),或(OR),非(NOT)。

与或非也可以用符号表示:   &   |    !  三种符号表示。

与就是两个值都为真才为真。

或就是两个值有一个为真就为真。

真的非就是假,假的非就是真。

这个就是两种值,三种运算的含义。

有点哲学的意思。

布尔通过研究发现:所有的数字算数运算,都可以用布尔代数化简成为 0和1的与或非操作。

例如:加法a+b

进位就是a&b,而加完后0位是(a&!b)|(b&!a)

也就是可以用与、或、非来表示加减。

二进制配合布尔代数,能够表示所有的数学运算。

1864年,布尔去世。但是他发明的这些计算方式,将在100年后得到应用,成为计算机体系中的基本运算。

用与、或、非的运算来等价表示加减乘除的运算,这个就是布尔留给后世的财富。

3:香农:硕士论文和开关电路

克劳德·艾尔伍德·香农是美国数学家,也是信息论的创始人。

但是,在成为信息论奠基者之前,学生时代的他就发表了一篇划时代的论文。

1936年,正在读硕士的香农发表了著名论文《继电器和开关电路的符号分析》。

在当时能够实现开关电路的技术方案就是继电器。

通过磁体通断打开或者关闭。

如果继电器打开,电流带来磁场,继电器合上,电路闭合。

如果继电器关闭,磁场消失,继电器关闭,电路断开。

这个开关电路给了香农灵感,配合布尔代数。

香农给出了布尔代数一种物理实现方式。

串联的开关电路就是布尔运算的与操作,两个开关a和b都关闭,灯才能亮。

这个电路就是a&b

而并联的开关电路就是布尔运算的或操作。两个开关有一个关闭,灯就会亮。

这个电路就是a|b

是不是看起来简单极了。

还没有硕士毕业的香农,奠定了现在数字电路的基础。

布尔计算可以将任何运算化简为与、或、非。

所以不断重复这两种电路,就可以通过电路实现任意运算。

此时,从莱布尼茨提出了二进制,已经过去了两百多年,离布尔发表布尔运算也过去接近100年。

终于,香农说,你们的数学表达,我可以用物理电路来实现了。

这个就是现代计算机的基石。

哈佛大学的霍华德·加德纳(Howard Gardner)教授评价:“这可能是本世纪最重要、最著名的一篇硕士论文。”

4:晶体管和集成电路

1947年,美国物理学家肖克利、巴丁和布拉顿三人合作发明了晶体管。

晶体管的诞生,替代了原来的继电器,电子管等设备。

成为了整个信息时代的基础。

在晶体管发明十年后的1958年,34岁的基尔比加入德州仪器公司。然后有了把多个晶体管放到一起的想法。于是,集成电路诞生了。

又过了十二年,1970年,第一个CPU,英特尔4004诞生了。

这些基础都变成如下MOS管的开关电路,下图就是一个开关电路(gate)。通过控制栅极电压,实现Source和Drain的通断。

时至今日,芯片的集成度不断的增加。

最新的CPU,GPU,手机处理器等等, 其晶体管的数量都已经超过百亿级别。

晶体管数量

制程

M1

160亿

5nm

安培A100

540亿

7nm

A14

125亿

5nm

麒麟9000

153亿

5nm

但是,其内部运行的数学逻辑,仍然是莱布尼茨提出的二进制,布尔发明的布尔计算,和香农描述的开关电路。

一直没有改变!

欢迎关注:歪睿老哥,如果你觉得本文还不错,欢迎点赞,在看,分享。

往期阅读:

边缘AI芯片是个什么玩意?

往期总结

为芯片奠定数学基础的那些大神们都是谁?相关推荐

  1. 王者荣耀微信哪个服务器人最少,王者荣耀:微信区王者人数锐减,大神们都去哪了?这些原因很真实...

    原标题:王者荣耀:微信区王者人数锐减,大神们都去哪了?这些原因很真实 王者荣耀:微信区王者人数锐减,大神们都去哪了?这些原因很真实 大家好!王者荣耀S16赛季已经开启一月之余,但是微信区的王者段位却相 ...

  2. 大神们都应该去哪里工作?

    接上一篇文章. 文中提到我认识了一个做嵌入式的大神,技术真的非常厉害.我们在调试过程中,遇到问题,他总是能告诉我们排查的手段,而且针对一个问题,他能想到几种不同的解决方案.嵌入式驱动跟其他软件有点不一 ...

  3. 如何给页面加上loding_如何给片头添加字幕?视频剪辑大神们都这样玩

    大家在刷视频时,有没有留意到很多正片前还有一段片头,这是为了使视频内容呈现得更完整.有时候,小伙伴们还会给视频加上一段片尾.与正片相比,片头比较单调,但它的作用很重要.为了使人们更加清楚视频内容的表达 ...

  4. 技术大神们都常看哪些公众号?

    你经常看公号么,经常从公号中获取有用的信息和知识么? 但是,面对琳琅满目的公号,怎么选择关注? 这里有7个高质量公众号,推荐给大家! 这些公号都是一些优秀原创博主,而且基本都是在知名互联网公司工作,或 ...

  5. 大神们都在用的终端工具,多合一全能终端神器MobaXterm

    击上方"果果小师弟",选择"置顶/星标公众号" 干货福利,第一时间送达! 摘要:现今软件市场上有很多终端工具,比如:secureCRT.Putty等等.secu ...

  6. 关于知识图谱,各路大神最近都在读哪些论文?

    本期内容选编自微信公众号「开放知识图谱」. TheWebConf 2018 ■ 链接 | https://www.paperweekly.site/papers/1956 ■ 解读 | 花云程,东南大 ...

  7. 奉劝那些想涨工资的程序员,这些 IT 大神们都在用的网站,你越早知道越好(建议收藏)!!...

    点击关注公众号,回复"1024"获取2TB学习资源! 作为一个程序员.码农.新时代的农民工来说,一些必备的网站(如:搜索引擎.代码管理.技术学习.工具查找.技术博客等)是非常必要的 ...

  8. Redis 分布式锁:从小白到大神方案都经历了什么?

    Redis 分布式锁使用 SET 指令就可以实现了么?在分布式领域 CAP 理论一直存在. 分布式锁的门道可没那么简单,我们在网上看到的分布式锁方案可能是有问题的. 「码哥」一步步带你深入分布式锁是如 ...

  9. python大神们都在用的爬虫工具,你知道几个?

    Python 爬虫的工具列表大全 网络 通用 异步 网络爬虫框架 功能齐全的爬虫 其他 HTML/XML解析器 通用 清理 文本处理 通用 转换 字符编码 Slug化 通用解析器 人的名字 电话号码 ...

最新文章

  1. 国内IT出版社的四大软肋
  2. Overfull \hbox或Underfull \hbox错误提示 基于LaTex+VSCode+MAC
  3. ENVI修复图像坏点扩展补丁
  4. android 文件上传,中文utf-8编码
  5. day21—AngularJS学习初体验
  6. STM32 SDIO详解
  7. python好用的内置库_第42p,time库,Python中优秀的内置库
  8. mongodb 分组聚合_MongoDB干货总结
  9. LeetCode 111 二叉树的最小深度
  10. 逻辑卷管理LVM (Logical Volume Manager)
  11. 海量数据 网站中用户积分排名问题
  12. Servlet运行原理(Tomcat为例)
  13. Unity 2019 安装教程
  14. 黑马程序员宣传语征集大赛
  15. 你写论文时发现了哪些神网站?
  16. 计算两个向量的逆时针夹角
  17. 2022最新常用API接口
  18. ubuntu1804 3dm-gx5-25
  19. 企业如何选择和配置服务器解决方案(2023年版本)
  20. kaggle——信用卡欺诈检测项目实战

热门文章

  1. 使用ZeroTier组建异地虚拟局域网
  2. android studio做一个计时器,android studio怎么编写计时器
  3. Qlik Sense 字符串截取和拼接详解(Left、Right、)
  4. kubernetes-ETCD
  5. 那些看似无用的努力,都不会白费
  6. 利用YOLOv3玩CSGO
  7. win10系统下如何用命令行的方式打开画图软件以及画图板汉字字体如何由竖排改为横排?...
  8. Js实现鼠标滚轮滑动监听
  9. An Easy DVD Ripper
  10. Jupyter Notebook 安装+配置环境 总结