计算机高级语言与汇编语言的优势与劣势

来源:百度知道 编辑:UC知道 时间:2024/05/16 20:12:14

好像很多书都有说了。简单说就是:
汇编的优点:
汇编已经算是机器语言了,只是用看得懂的单词来代表机器的二进制码。高速高效,直接可以在汇编语言上看到运行多少个指令,多少机器周期来完成。
汇编的缺点:
机器语言嘛,顾名思义就不是人看的东西。就算是自己写的程序,尤其是比较庞大的程序,基本上过几个月就看不懂的了。程序编写速度慢。而且移植性差,不同的芯片可能其汇编指令有不同。
高级语言的优点:
容易编写和读懂,移植性好。编写快速。
高级语言的缺点:
运行速度基本上比直接用汇编写的慢,速度和程序大小与编译软件有关。极少时候编译软件编译出错误代码可能查不出来(这情况极少)。

所以,编程人员大部分都是用高级语言为主,需要高效代码的时候用汇编的混合编程方法。

汇编语言是一种最接近计算机核心的编码语言。不同于任何高级语言,汇编语言几乎可以完全和机器语言一一对应。不错,我们可以用机器语言写程序,但现在除了没有汇编程序的那些电脑之外,直接用机器语言写超过1000条以上指令的人大概只能算作那些被我们成为“圣人”的牺牲者一类了。毕竟,记忆一些短小的助记符、由机器去考虑那些琐碎的配位过程和检查错误,比记忆大量的随计算机而改变的十六进制代码、可能弄错而没有任何提示要强的多。熟练的汇编语言编码员甚至可以直接从十六进制代码中读出汇编语言的大致意思。当然,我们有更好的工具——汇编器和反汇编器。

简单地说,汇编语言就是机器语言的一种 可以被人读懂的形式 ,只不过它更容易记忆。至于宏汇编,则是包含了宏支持的汇编语言,这可以让你编程的时候更专注于程序本身,而不是忙于计算和重写代码。

汇编语言除了机器语言之外最接近计算机硬件的编程语言。由于它如此的接近计算机硬件,因此,它可以最大限度地发挥计算机硬件的性能。用汇编语言编写的程序的速度通常要比高级语言和C/C++快很多--几倍,几十倍,甚至成百上千倍。当然,解释语言,如解释型LISP,没有采用JIT技术的Java虚机中运行的Java等等,其程序速度更 无法 与汇编语言程序同日而语 。

永远不要忽视汇编语言的高速。实际的应用系统中,我们往往会用汇编彻底重写某些经常调用的部分以期