125.计算机成精了?
书迷正在阅读:穿越校园霸男人、神鬼世界的五通神!、狩猎助我成仙、长生仙途:育妖养植求仙、大秦之帝王系统、影帝:我的娱乐时代、姑娘有喜、重生农门:弃妇当家、移民美丽新世界、数码宝贝世界里想回家的中年男人
对于赵文来疯起来只会说二进制的计算机语言,赵德彬和王江平是是震惊的。 “嘶——” 两人齐齐倒吸一口冷气。 恐怖如斯! 真是恐怖如斯! 这里必须要向读者老爷们解释一下二进制语言、汇编语言和高级语言之间的关系。 二进制语言是计算机能直接运行的语言,属于低级语言,就是一连串的0和1,人类很难从连篇累牍的0和1中获取信息。 举个例子: 假设这里有“010110100101011101001100”,二十四个连空格都没有的0和1,正常人打眼一看,只能看到满眼的0和1,还能从里面看出其他什么东西? 而计算机就不一样了,它能看懂这一长串的0和1,识别出这串信息表达的是“ZWL”的意思; 再假设这里有一个牛逼的程序员,能把阿克斯码对照表背的滚瓜烂熟,知道01011010对应的是Z,01010111是W,01001100是L。 可是,当他看到上面二十四个0和1的时候,是不是他还得反应一会,先把这二十四个数分成三组,一组八个,才能看出来这一串是“ZWL”的意思? 这才仅仅是二十四个0和1,表达的是“ZWL”三个字母的意思。 试想,一个程序如果有几十万、上百万的0和1挤在一起,任谁看了,不也得懵圈? 除了阅读性差以外,容易出错也是另一座无法翻越的大山。 人在输入0和1的时候,是不是很容易出错? 那简直不要太容易。 只要眼睛花一下、手摁得慢一下,一个0或1出错,程序就会出问题。 同样地,想从这一堆0和1中找错,也是一件非常困难的事情,就像上面那一串只有区区二十四个0和1,但却可以看得让人感觉眼花缭乱。 况且,人的脑子很难把二进制的阿克斯码背下来,因为这东西太反人类了,根本就没有什么规律。 比如: “01111111”是“Delete删除”, 要是打错了最后的1,那么“01111110”就是“波浪号~”的意思; 打错中间第五个1,就会变成代表着“小写w”的“01110111”。 人的脑子很难准确地记住那一串串的0和1,需要不停地翻对照表,不仅特别容易出错,有了错误还不好排查。 后来,上古程序员们是被冗长的0和1折磨得不轻,觉得这东西实在是太不方便了,难且不说,效率还低。 于是,他们就在二进制语言的基础上,倒腾出来了汇编语言。 汇编语言是面向机器的低级语言,不能被机器直接识别,需要编译。 这个虽然也比较难,但已经比二进制语言强多了,最起码人的脑子是可以记住的。 据说,国家在航空航天和武器方面的编程,用的都是汇编语言。 因为汇编语言仍是面向机器的语言,外人很难从其代码上理解程序设计意图,设计出来的程序不易被移植,安全性比较高。 然而,汇编语言对广大凡人们来说,还是有些复杂、困难,尤其是在进行数据处理或是逻辑运算时,更是令人头秃。 所以,有一批特别聪明、特别有才的程序员,寻思着:不行啊,就算用汇编语言编程,还是有很多人不会,这怎么办捏? 于是,这批聪明人,又设计出了高级语言。 C语言就是高级语言,到这里,编程语言对人类已经非常友好了,就跟大家平常说话交流是一样的。 程序员的门槛总算是被极大地拉低了,连小学生都可以学编程。 用C语言写的程序,阅读性很好,泛用性也很高。 张三写出来的程序,李四就算水平差点,也能看懂。 就算李四看不懂,李四也可以祭出程序员的杀手锏、编程的终极武器、所有代码的万能钥匙——上网查。 只不过,高级语言是从人类的逻辑思维角度出发的计算机语言,不能被机器直接识别,需要最终编译成0和1让计算机识别。 但打个比方,假如汇编语言只需要编译一次就能成为二进制语言,C语言就得进行多次编译,转成十六进制、二进制,计算机才能懂。 高级语言方便是方便,但需要多次编译。 在编译过程当中,可能出现问题,比如有些东西转译后机器识别不了,或者有些信息译着译着就给译丢了。 所谓的“debug”,就是找出编译不通过、计算机无法识别的信息。 甚至在有些情况下,用高级语言写程序写的好好的,怎么看都没有错误,实际上也没有错误,但转译成二进制之后,机器就是识别不出来。 综上所述,会二进制语言并不稀奇。 远古时代的程序员,拿线圈、磁珠,在打孔卡上怼程序,用的就是二进制语言。
很多上古时代用汇编语言编程序的程序员,就懂一些二进制,就比如王江平。 为什么王江平的杀毒软件在全国首屈一指,别的杀毒软件都打不过他? 就是因为他搞的是底层的东西,从底层的一串串“010010101……”找病毒的代码,将病毒从根上抹除。 任何的病毒,转换到计算机上都是0和1的代码,所以赵德彬和王江平弄了个广谱特征码查杀病毒,本质上就是通过二进制找病毒。 王江平是初中学历,学问不高,编程都是自学的,没人教他,一接触编程就是学的汇编语言。 其他开发杀毒软件的人读书太多,编程入门是C语言,他们基本上也不会费劲巴拉地去研究汇编语言。 C多好用,多简单啊! 王江平的汇编语言水平就很厉害,对二进制语言也有所研究。 但是,正常人的“会”二进制语言,跟赵文来的“会”二进制语言,不是同一个“会”。 本质上,赵文来的脑子已经不是人类的脑子,而是一个计算机的脑子。 正常人就算再怎么熟悉二进制语言,面对一长串的0和1,他也要像王江平和赵德彬一样,先把那些0和1分成八个一组,然后一组组地从脑子中找出来对应的信息。 赵文来就不一样了,他走的不是人类的路子,他跟计算机一样,看到一大串0和1,就直接能从这一长串数字中提取信息,一点也没有阅读障碍。 望着不停地在纸上写数学公式的赵文来,王江平两眼发直,喃喃问道:“他这……怕不是计算机成精了?” 旁边的赵德彬,也是如出一辙的两眼发直,他愣愣地回答道:“我觉得……可能真是……” · 注释1: 建国后不许成精。 注释2: 按理说今天应该两更,第二更我已经写好了,但由于今晚0点本书总算等到了第一波推荐,我就把第二更扣下了,零点再发。 本书在29万字收到第一轮推荐,虽然数据不好看,也不知道上了试水推能不能pk得过其他书,但这本书老夫写得颇为满意,想表达的东西也表达到位了,能得到读者朋友的肯定,我很高兴。 就算试水推失败没有其他后续推荐,老夫写这本书的初心还是不会改变的。