|
发表于 2020-6-28 23:05:04
|
显示全部楼层
这是一个一直以来的错误认识,它建立在 电子攻城狮 和 数学家/程序猿 的区别之上。
计算机的发明是一个坎坷的道路,人类最初发明的是机械计算机,而发明它的人,必须在数学和机械上都有极高造诣;随着电子时代来临,人类发明了电子计算机,但最初的电子计算机,它也是非常机械的 --- 用继电器来实现。甚至流行至今的 Debug 概念,最初就是因为飞虫到处乱飞挡住继电器触点,美军上将格蕾丝·霍珀(女性)不得不亲自去继电器计算机里捉虫而发明的词汇。
顺便说下,格蕾丝·霍珀连汇编都不用,她可以直接给计算机写机器码!包括大家耳熟的比尔盖茨也一样,他们都是可以直接读写机器码,汇编都不用的大神级早期程序员(比尔盖茨在成为一个成功的商人之前,是哈佛大学数学系高材生和程序员)。
燃鹅机器码和高级语言遵循的思路是不同的思路,前者是机械、机器的,后者是数学的,这是一个非常重要的问题,什么是数学?数学描述和机器描述并不一致。所以,使用高级语言 --- 实际上 C 或者更老的 Forran 语言,都是函数式的,使用数学而非机器的描述。
因此,高级语言和汇编,并非谁比谁难,而是数学描述和机器描述的差异。
|
|