x=y;/p
上面这种写法很自然,我们在学数学的时候就是这么写的,但是在汇编语言中它是这么写的:/p
vx,y/p
直译就是:把y移动到x的存储位置(这是计算机硬件能够实现的『操』作)。再比如:/p
ifx/p
这几行命令,我们用自然语言就能读懂它在干嘛:比较两个数的大小,然后把大的数赋值给小的数。用汇编语言写就是这样:/p
cmpx,y/p
jleless/p
j/p
less/p
vx,y/p
sk/p
vy,x/p
用自然语言写很简单的三行命令,用汇编写就需要这么多行才能实现。/p
还记得当初我们为什么需要汇编吗?因为机器只能识别0和1构成的指令,但是那种数字指令对我们人类来说很难识别和记忆,所以我们用英文单词来一一对应那些数字指令,那些英文单词构成的指令集合就成为了汇编语言。新的知识点:当我们写出汇编代码后,在真正交给cpu运行之前,我们得把汇编代码翻译成机器码,因为cpu只认识0和1构成的机器语言。(因为机器指令和汇编指令是一一对应的,所以翻译过程很简单,就像把简体字翻译成繁体字)。/p
先驱们尝试把汇编语言简化的过程中,想到:既然要翻译,那么我们能不能创造一种更简洁的语言,然后把它翻译成相对复杂的汇编呢?就像把文言文翻译成语素成分更复杂的现代文。/p
“私见张良,具告以事“———翻译为———“私下会见张良,把事情详细地告诉了他“/p
从这个想法出发,c语言诞生了。(实际上c语言是在b语言的基础发展出来,b语言是在bc的基础上发展出来的。在c之前还有个十几种其他编程语言。不要管辣么多,静静听我吹就好。)/p
(在这儿停顿,看到这里,新手朋友们可能已经费尽了许多脑细胞了,如果你已经阅读/思考疲劳的话,可以在这儿停顿,起来走一走看看窗外。也许你并不能全部理解上文的内容,那没有关系,那不会影响你学习编程,但如果能理解的话,对今后学习将会有助益。我能保证后面的内容将会越来越简单。你大可以带着疑问先阅读完全文,再回过来读一次。)/p
c语言/p
你们看,汇编语言多复杂,因为它和机器硬件实现的指令一一对应,所以光改造它而不改造机器指令的话毫无意义。所以我们不如创造一种新的语言,然后把它翻译成汇编吧!语言有许多强大的优点。但是在此,(顶着老师和同行们的压力)我想让新手知道的是:函数。/p
函数是什么?当我们在写代码的时候,可以想象为我们写的每一行都是一个指令。我们写十几行指令来实现一个乘法运算,用二十几行写一个排序『操』作。程序猿是世界上最懒的物种,他们不想每次要做乘法时都写十几行代码。能不能用一行指令代表十几行指令?就像:/p
指令集a和指令集b所描述的就是完全同样的事情。但是a用了7个指令,b用了5个指令。如果你要在这件事件上偷懒,你是愿意以a的形式还是b的形式来写这个指令集呢。我不知道你的选择是什么,但是作为世界上最懒的物种来说,程序猿在编程的时候,能少写一行就不会多写,能少敲一个字母就绝对不会敲两个。所以在碰到上面这个问题时,采用b的写法无疑。那么如何实现呢?假设指令集a中的每条指令都是计算机能够识别的指令,指令集b中的第3条“把大象装进冰箱”是计算机不能识别的,是我们自己虚构的。但是我们要使用这条指令,因为它对于我们来说很省事。现在很简单,只要规定:我们每次写“把大象装进冰箱”这条虚构指令,就自动把它翻译成“打开冰箱、把大象塞进去、关上冰箱”这三条原生指令。翻译过程不用担心,前人们已经写好了各种翻译器能够现实这种效果。/p
那么,上面我们虚构出来的那条指令:把大象装进冰箱。其实就是我们所谓的函数!下面展示的是在c语言中创建一个函数的形式。/p
把大象装进冰箱(大象x)/p
{/p
打开冰箱;/p
把大象x塞进去;/p
关上冰箱;/p
}/p
下次想干这件事件的时候,就只要写一句:把大象装进冰箱(大象巴拉)。括号里写哪头大象,就装哪头。那么把大象装进冰箱就是一个函数。/p
有了函数这个东西,世界上任何复杂的任务都可以被拆分成最简单的单个任务。当我们学c语言的时候,一定要把函数的用法学好。我认为这也是新手学习c语言的主要任务。/p
更高级的编程语言/p
按照学院派的编程学习路线,计算机专业基本都是先学c语言,然后学c++,(然后学数据结构),然后学/n/js....,然后回去再学汇编呀、电路呀什么的。想必大家都熟悉这套方案。/p
其实学习一个东西,从根源开始了解接触,从底层学到顶层是一个自然的遵循逻辑的学习方式。在计算机世界中,如果说从真正的根源开始学的话,估计真得从逻辑电路开始了,然后学到汇编语言,再学到c语言,再学c++。但是为什么学院们都选择从c语言开始呢?一是因为相比起汇编语言,c语言更能够学以致用,使用起来更方便;二是因为,现在许多流行的编程语言,比如、都是类c语言的,
手机阅读:http://m.00kshu.win/250207/
发表书评:http://www.00kshu.win/book/250207.html
为了方便下次阅读,你可以在顶部"加入书签"记录本次(第十九章 克苏鲁神话)的阅读记录,下次打开书架即可看到!请向你的朋友(QQ、博客、微信等方式)推荐本书,莫道梦魂遥谢谢您的支持!!