对于赵文来疯起来只会说二进制的计算机语言,赵德彬和王江平是是震惊的。
“嘶——”
两人齐齐倒吸一口冷气。
恐怖如斯!
真是恐怖如斯!
这里必须要向读者老爷们解释一下二进制语言、汇编语言和高级语言之间的关系。
二进制语言是计算机能直接运行的语言,属于低级语言,就是一连串的0和1,人类很难从连篇累牍的0和1中获取信息。
举个例子:
假设这里有“010110100101011101001100”,二十四个连空格都没有的0和1,正常人打眼一看,只能看到满眼的0和1,还能从里面看出其他什么东西?
而计算机就不一样了,它能看懂这一长串的0和1,识别出这串信息表达的是“l”的意思;
再假设这里有一个牛逼的程序员,能把阿斯克码对照表背的滚瓜烂熟,知道01011010对应的是z,01010111是w,01001100是l。
可是,当他看到上面二十四个0和1的时候,是不是他还得反应一会,先把这二十四个数分成三组,一组八个,才能看出来这一串是“l”的意思?
这才仅仅是二十四个0和1,表达的是“l”三个字母的意思。
试想,一个程序如果有几十万、上百万的0和1挤在一起,任谁看了,不也得懵圈?
除了性差以外,容易出错也是另一座无法翻越的大山。
人在输入0和1的时候,是不是很容易出错?
那简直不要太容易。
只要眼睛花一下、手摁得慢一下,一个0或1出错,程序就会出问题。
同样地,想从这一堆0和1中找错,也是一件非常困难的事情,就像上面那一串只有区区二十四个0和1,但却可以看得让人感觉眼花缭乱。
况且,人的脑子很难把二进制的阿斯克码背下来,因为这东西太反人类了,根本就没有什么规律。
比如:
“01111111”是“delete删除”,
要是打错了最后的1,那么“01111110”就是“波浪号~”的意思;
打错中间第五个1,就会变成代表着“小写w”的“01110111”。
人的脑子很难准确地记住那一串串的0和1,需要不停地翻对照表,不仅特别容易出错,有了错误还不好排查。
后来,上古程序员们是被冗长的0和1折磨得不轻,觉得这东西实在是太不方便了,难且不说,效率还低。
于是,他们就在二进制语言的基础上,倒腾出来了汇编语言。
汇编语言是面向机器的低级语言,不能被机器直接识别,需要编译。
这个虽然也比较难,但已经比二进制语言强多了,最起码人的脑子是可以记住的。
据说,国家在航空航天和武器方面的编程,用的都是汇编语言。
因为汇编语言仍是面向机器的语言,外人很难从其代码上理解程序设计意图,设计出来的程序不易被移植,安全性比较高。
然而,汇编语言对广大凡人们来说,还是有些复杂、困难,尤其是在进行数据处理或是逻辑运算时,更是令人头秃。
所以,有一批特别聪明、特别有才的程序员,寻思着:不行啊,就算用汇编语言编程,还是有很多人不会,这怎么办捏?
于是,这批聪明人,又设计出了高级语言。