一、学前花絮
晚上做了一个梦,也许是最近经常思考二进制的事情,比如我发现磁盘存储数据,是依据磁极的NS对应着01,而数据是那么多,表现形式也是多种多样,但就是这么奇妙:存到磁盘上都是以千万亿的磁畴(NS极)表示这些数据。而计算机的计算过程,也是通过高低电平对应着01进行计算的。一句话,计算机从计算到存储都离不开01!然后梦里就想到了更多的二进制:
清晨,你被闹钟叫醒(响/不响 = 1/0);
用微波炉热早餐(加热/停止 = 1/0);
开车遇到红绿灯(通行/停止 = 1/0);
扫二维码支付(黑/白方块 = 1/0);
晚上睡觉(清醒/睡眠 = 1/0)……
二进制不仅存在于计算机中,它早已渗透到我们生活的每一个角落。
本文梳理计算机二进制的原理,并以此文向发现二进制并用在数据科学中的前辈们致敬!
二、Python与计算机中的二进制
大家在生活中常用的是十进制,比如0~9一共10个数字,表示计量数量。而逢十进一就是十进制的最根本规则。也可以认为10进制里面的基本构成元素是没有10的,最大数字是9。那么二进制呢?逢二进一、基本构成元素是0和1。其他进制也是一样比如8进制、16进制等等。都是这样的规则。
2.1 生活中的二进制哲学
1.基础物理现象
l电灯:亮/灭
l开关:开/关
l门: 开/关
l锁: 锁/解锁
2.生物世界的二进制
l心跳:收缩/舒张
l呼吸:吸气/呼气
l神经:兴奋/抑制
l基因:显性/隐性
l生命:活着/死亡
3.社会系统的二进制
法律:合法/非法
道德:对/错
投票:赞成/反对
合同:有效/无效
这些看似简单的“二选一”,构成了复杂世界的基础单元。这与计算机世界是何其相似,计算机里面处理、存储那么复杂的逻辑,但归根结底都是0、1的组合。
2.2 计算机中的二进制实现
1.计算层面:晶体管的开与关
以上代码模拟晶体管的基本行为,比如施加电压控制晶体管的状态01。根据01状态输出电信号。
上面的代码是逻辑与门的操作,也就是python的符号&的用法:输入同是1输出为1,否则输出为0。下面是应用测试:
输出结果:
以上的与门操作就是构成计算机集成电路的基本单元,而数亿个这样的晶体管开关,构成了现代CPU的计算核心。
2.存储层面:从内存到硬盘
内存(DRAM):
固态硬盘(SSD):
浮栅有电荷/无电荷 = 1/0
非易失,但会电荷泄漏
机械硬盘(HDD):
2.3 二进制的数学之美
1.为什么是二进制而不是十进制?
输出结果:
二进制虽然对于我们生活中的计算似乎麻烦了一些,毕竟大家购物、消费习惯10进制,但对于计算机来说二进制有着关键优势:
物理实现简单:只需区分两种状态
抗干扰强:非此即彼,没有模糊地带
布尔代数完备:完美数学工具支持
可扩展性强:n位可表示2^n种状态
2. 信息论的奠基:香农的革命
克劳德·香农在1948年的论文中提出:
输出结果:
核心观点:
三、小结
今天针对二进制在计算机中的应用及原理进行了详细论述,并结合python语言进行了演示。特别是python程序实现的二维码,我们可以当做一个小程序生成自己的个性二维码(无论是自己的姓名还是身份证号码、家庭信息等等只要是字符能够表示的都可以)。
下次你扫描二维码时,可以想一想:
那些黑白方块不仅是支付信息,更是古老二进制思想在数字时代的化身。从《易经》的阴阳,到莱布尼兹的二进制算术,再到今天遍布全球的数字网络——人类一直在用最简单的对立统一,理解并塑造复杂的世界。
二进制,这个只有两个符号的"字母表",写出了整个人类数字文明的史诗。
让我们保持学习的热情,2026年一马当先、马到成功!