先声明,这篇是转发自知乎的。 随着工作越久,越发现了解计算机语言对于未来生活和工作的必要性。 作为一枚非程序猿,我觉得这篇帖子是介绍计算机语言发展的文章里,非常浅显易懂的一篇。看完特别想分享给大家。 在计算机还全都是些庞然大物的石器时代,写程序是靠「机器语言」。虽然名字叫做「语言」,实际上用到的就真的只有两个数字0和1(考虑到三进制计算机[1]的话,也许还要算上-1)而已。一些特定的数字组合,对于计算机来说有特定的意义,会让计算机做出特定的动作——其实我们甚至不该叫它们「数字」,因为它们并不代表任何「数量」,而是代表「模式」(pattrn)的信号。这是什么意思呢?就好比你伸出一只手去按钢琴键盘的同一部分,缩起来的指头记作0,伸开来的指头记作1,和按出来的声音是不一样的,计算机接受的数字组合与之类似。000这个指令输入一块小芯片的时候,芯片里面有八坨晶体管组成的小装置被「按下」了,其中第二个被通上高电压,另外七个则是低电压,而这个组合会继而引发更多的、由芯片工程师所预先设计的一系列连锁反应。无数这样的模式数字接踵而至,才最终让你面前的屏幕上出现一些能被人理解的图案来。 给计算机输入这种相当于「命令」的数字——称为「指令」——来让它做一些事情,包括处理其他的数字(不管那些数字是真正代表数量的数,还是另一些代表指令的模式),就是编程的本质活动。明白了这一点之后,不妨来猜猜这台COSMACELF计算机是怎么编程的…… amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;spanstyl=amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;font-siz:15px;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;gt;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;lt;imgsrc=amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;amp;quot;中科国庆助力白癜风康复呲美莫司乳膏
|