大家好,我是讯享网,很高兴认识大家。
首先,今天是中国程序员节(1024,没错)。祝程序员们节日快乐!
是不是已经在你脑子里了↓↓
网格的阴影可能代表二进制0和1?
我们常常在想,程序员每天坐在电脑前,看着一串代码。这些代码到底写的是什么?
做程序员的人很多,一般有十几个,每一种工作都不一样:C程序员,C++程序员,Python程序员,vb程序员,java程序员。……
其实不管写什么代码,我们都是在用一种普通人看不懂,但机器能识别的符号,来传达人的指令。这种在网络上搬砖的工作,也被称为时代的码农。
如果你想理解程序员编码的符号,你必须学习很厚的知识。毕竟↓↓
头发越秃越有资格?
但对于计算机来说,这些语言比识别我们人类的语言“一把把车把卡住了”要简单得多。
然而,这并不是计算机语言的最终形式。我们平时写的程序,打出来的代码,各种数据,都是在计算机运行识别的时候被编译器翻译成二进制的!当二进制系统被拆解、计算、重建后,我们的生活中就会有软件、游戏、音乐、电影、app。……
也许,有了二进制,你就拥有了全世界?
小谢尔顿梦幻冒险的二元宇宙
到底什么是二进制?
我们在课堂上都学过二进制是“每二进一”,用1或0表示。为什么?
如果通俗地解释,可以用二进制比充当信标通信的灯泡。
比如完全没有情况的时候,灯都不需要开,用0表示;如果有1个敌人,即1条消息,则用1表示。
200个敌人来了怎么办?灯泡开关200次是不现实的,同时开200个灯泡也太浪费了,而且你的同伴也认不出1和0以外的数字。这时,不同的状态可以用二进制来表示。
换算表
数学课学习二进制的记忆被唤醒了吗?如果你还没想通也没关系。这台机器总能让你一目了然!↓ ↓
中国科技馆【每?了解二进制和十进制!
二进制和中国八卦算法一样?
在我的印象中,二进制是为计算机服务的,计算机让二进制家喻户晓。
但实际上,戈特朋友威廉·莱布尼茨(1646-1716)的二进制系统最初并不是为计算机服务的,它只是哲学、法律、数学、神学、伦理学、历史和语言学等一系列研究中的数学研究成果。这一成果的发现与中国的八卦息息相关。
二进制的发明者莱布尼茨曾经说过,“要从虚无中创造万物,用一个就够了”,而这个灵感与中国八卦息息相关。他曾经给北京的神父写过一封信,交流二进制和八卦的关系。他在1716年发表的《论中国哲学》一文中特别指出,二进制和八卦有相通之处。
用八卦二进制交流?↓ ↓
八卦中的每一个卦都是由两个叫做卦的符号排列而成的。“-”称为“阴爻”,相当于二进制的0,“-”称为“阳爻”,相当于二进制的1。
八卦中的“横线”是六爻。
太极生两仪,两仪生四象,四象生八卦。这句话大家应该很熟悉,正好对应二进制计算方法。
以此类推,如果一次取六,就会得到64种排列,称为“六十四卦”,结果也是与二进制一一对应。
没有感受到祖先的智慧,八卦的和谐之美在二进制和十进制出现之前就已经奠定。但导致莱布尼茨发明二进制的真的是流言蜚语吗?
盛传莱布尼茨发现八卦与二进制有相同的计数方法,认为他窥见了中国几千年伏羲文化的秘密:一生万物。并写信给康熙皇帝,想在中国设立神学院,更好地研究中国的神学和哲学,但被拒绝了。
不过比较靠谱的传闻是,莱布尼茨发明二进制后,酷爱研究哲学和神学,他巧合地发现中国的八卦与二进制计数法一模一样,由此产生了二进制诞生于中国八卦的说法。
在历史的汹涌浪潮下,真相不得而知。但也吸引了学者们对这一争议进行仔细研究,也出版了相关著作来探究这一奥秘。
上海人民出版社出版书籍。
二元模型首次诞生。
不可避免的是,如果芯片中不使用原来的二进制,谁来计算?
事实上,最初的二进制系统是由一个木制模型演示的。1672年,莱布尼茨制作了一个木制机器模型,并向皇家学会成员演示了二进制系统。但是这个模型只能说明原理,不能正常工作。
同时,他还从事原创计算器的研发工作。此后,莱布尼茨与制表师合作,制造了世界上第一台能够进行乘除运算的原始计算器。莱布尼茨发展了理论,制表师发展了技术,最后由莱布尼茨组装。1674年诞生了一种由齿轮系统驱动并使用计数器和可移动定位机构的计算器。这是世界上最早的乘除计算器的应用。
莱布尼茨计算器
二进制创造完成后,“沉迷手工”的全科医生莱布尼茨并没有马上发表。后来,他忙于改进微积分和研究其他科学问题…直到1679年,他重新审视了这一重要的数学创造,并正式发表了关于二进制算术的论文,二进制才得以完善。
虽然计算机很强大,但它只知道这些数字。
200多年后,约翰·冯·诺依曼在计算机中使用了二进制。
为什么十进制用得好,电脑却要用二进制?
其实CPU的工作原理就是无数次的上电下电(我们可以理解为断电上电,实际上并不是完全断电,而是高电位低电位。一般低电平为0~0.25V,高电平为3.5~5V)。
每一次开关机都是电脑操作的核心和基础。我们看到的画面,听到的声音,打出的文字,都是通过集成电路无数次的上电和断电来转化和呈现的。也就是说电子管的两种状态决定了所有的数据。
计算机集成电路
我们把二进制应用到计算机上,0代表关,1代表开。计算机通过一堆“有两种状态的东西”来表示要表达的数据。信息通过无数个0或1传递,最后解码,让每个人都能得到信息。
在实际应用中,有许多元件有两个明显的稳定状态。比如霓虹灯“开”“关”;开关的“开”和“关”;的“高”和“低”、“正”和“负”电压;纸带上有“孔”和“洞”,电路上有“信号”和“无信号”,磁性材料的南北极等等。
所以磁盘中的二进制用磁铁的N极和S极来表示0和1,N=0,S=1,把硬盘的盘面放大了1000万倍。上面全是小磁铁,由硬盘的磁头识别,然后变成电流信号“开”和“关”,供CPU处理。
光盘上也是一样,用“长”和“短”镜子来代表1和0。将光线放大一千万倍。上面有长点和短点。用激光头拍照,根据反射长度显示数据。
担心数据太多,电脑分辨不出来?实际操作中,每个代表0或1的“灯泡”称为1位;八个“灯泡”会被分组为一组,称为1byte,或1 byte(相当于一个类中的一组)。这个单元用于在网络上传输信息或在硬盘和内存中存储信息。
通常我们需要一组把一个英文字母输入电脑,也就是8个“灯泡”来代表,两组代表一个汉字,也就是16个“灯泡”来代表。
在使用电脑的过程中,电脑是否好用,处理“灯泡”的能力会体现在“位”上。比如计算机的CPU是64位的,相当于一次传输64个灯泡组成的信息。你一次能处理的信息越多,你需要的位数就越多。
从1946年诞生的第一台又大又重的计算机到今天广泛使用的智能笔记本电脑,所有的计算机都是基于二进制运算的。无论计算机处理的信息是数字、文字还是图像,这些信息都会转换成基于0和1的二进制运算系统的信号,一串0和1已经成为计算机和信息时代的代表符号。
如果看完二进制还蒙着眼睛看,那就对了。毕竟数学不容易!而且程序员并不直接使用二进制语言,因为太抽象太复杂,所以人们开发了基于二进制计算的第二种基本语言,以及更进一步的c++语言,更方便编辑,更容易理解,也就是我们所说的代码。
在日常生活中,我们可能会取笑程序员的“头发”和“衣服”…..但我们的内心其实很佩服他们聪明的头脑和对枯燥工作的坚持。当然,偶尔也会表现出对程序员的喜爱,就像↓↓
最后,
给程序员开几个玩笑。
1.世界上有10种人,懂二进制的和不懂的。
2.程序员为什么放弃奋斗?因为他没有数组。
3.数据库SQL走进了NoSQL的一个酒吧,过了一会儿,它出来了。因为我找不到桌子。
创作:中国科技馆新媒体团队
审核:郑新媒体团队特邀专家
本文来自中国数字科技馆。
本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://51itzy.com/30543.html