机器语言.汇编语言.高级语言三者之间各有什么特点
发布网友
发布时间:2022-03-29 11:47
我来回答
共4个回答
热心网友
时间:2022-03-29 13:16
机器语言是二进制代码,硬件能直接执行。你也知道的,电脑是只认识0和1的。但是用机器语言写程序,那是非常蛋疼的。指令多的数不清,还全是0和1组成,你说写个程序能不痛苦吗?即使只是在寄存器之间传一下数据,执行一下加法指令就已经痛苦得不得了。更不要说编写比较复杂的程序了。
为了方便记忆,我们发明了汇编语言。每一条汇编指令都可以唯一对应一条机器语言指令,也就是可以翻译成唯一的一段二进制代码。汇编语言和机器语言的指令是一一对应的。
但是汇编语言还是太不符合人们的日常语言习惯了,硬件相关性也太高,移植性很差(所谓移植性就是说我在一台机器上编了一段程序,能在上面执行,但是我还需要让它到另一台机器上也可以执行啊,这就是移植)。所以在汇编的基础上出现了高级语言。高级语言就和我们平时的语言习惯比较相似了,里面会有if,case,for,while这样的语句,读起来就像是人说话一样,告诉机器先做什么然后做什么,如果怎么样就怎么样,如果怎么样就一直做什么等等。并且高级语言的硬件相关性就很低了,就像你现在的一段程序,在X86的PC机上可以运行,放在AMD的K8平台上一样也能运行。当然,里面也许要进行一点点改变,但是绝对不是像汇编那样,基本上一点也用不上。
高级语言编写的程序通过编译器最终还是要生产二进制代码才能被硬件执行的,编译器的编译程序有四个步骤:预处理,编译,汇编,链接。
具体这四步到底做些什么那是很复杂的了。但是他也是要在中间生成汇编代码,然后再生成机器码的,如果你感兴趣可以去看看编译原理。
热心网友
时间:2022-03-29 14:34
机器语言就是直接的二进制代码,是硬件能直接执行的最低级代码
汇编语言是仅次于机器语言的低级语言,也能由硬件直接执行,只是代码为了方便阅读和记忆而使用符号化的语言
高级语言基本上不跟硬件打交道的,需要有编译器编译后机器才能执行
(个人理解)
热心网友
时间:2022-03-29 16:09
机器语言只能识别0和1这两个数字,而汇编语言是编译了的机器语言,高级语言是比汇编语言再高级的语言,记忆性更好,还有固定的语法。
热心网友
时间:2022-03-29 18:00
机器语言是计算机特有的认识语言,他由一系列的机器代码代表.汇编语言是人类可以识别的并由计算机执行的语言命令.高级语言....