正文

汇编语言基础知识2005-09-21 10:46:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/wukong/5071.html

分享到:

所谓汇编语言,其实质就是机器语言的一个高级的形式。我们知道,机器语言是CPU唯一可以真正"理解"的语言,它是用一些由"0"和"1"两个数字组成的一组数字来表示的。例如:1011000000000001(意思是将数字1放入累加器)。
  这样的一组数字非常难以理解和记忆,毕竟程序员不是一块CPU。为了使程序设计人员能够很好地记忆这些机器指令,简化程序设计工作,技术人员将这些怪异的数字用一些取自人类语言的简短的文字符号来表示,于是就产生了汇编语言。这些简短的文字符号称为指令助记符。例如上面的那个机器指令用汇编语言表达出来,就是"MOV AL,1"。
  同高级语言相比,汇编语言具有一些极其突出的特点:

  ① 汇编语言是一种完全面向硬件的语言,这同BASIC,C之类的高级语言截然不同。多数高级语言都是面向问题的,例如:如果需要在屏幕上显示一串文字时,我们可以直接应用BASIC语言中的PRINT语句,或用C语言中的PRINTF函数,这个问题就迎刃而解了。而使用汇编语言编程,解决这个问题的最终操作是"将这些文字的ASCII码写入显示缓冲存储器中"。可见,汇编语言将这个问题转化成了对硬件(显示缓冲存储器)的操作(写入)。这是汇编语言的一个极其突出的特点,也是汇编语言同高级语言的最显著的差别;
  ② 同高级语言相比,汇编语言编写的程序结构十分紧凑,运行速度很快。汇编语言同机器指令直接对应,编译速度快,同时,CPU"理解"其"母语"的速度远高于"翻译"高级语言的速度。因此,汇编语言是所有程序设计语言中运行效率最高的。这是汇编语言的一个最为突出的优点。当需要编写高速运行的软件时,例如编写图像处理程序,就往往使用汇编语言编写软件中的关键部分;
  ③ 用汇编语言编制程序十分费时,而且程序的质量直接受到程序员技术水平的影响,程序的可读性也很差。就象前面所举的输出文字的例子,用高级语言编程只需写一条语句,简单明了,极其直观。而用汇编语言编程则需写出一系列指令,这些指令都是些对硬件的操作,同"文字输出"这个问题没有明显的直接联系,因此程序的可读性很差。
  ④ 由于汇编语言是面向硬件的,所以用汇编语言编制的程序可移植性很差。显而易见,不同的CPU都有相互独立的指令系统,相互间无任何关系,就算是使用同一系列CPU的机器,因其外围硬件可能有差别,这也会使相同的程序在不同的机器上无法通用。
  不难看出,汇编语言存在很多的弱点,但由于它具有一些高级语言所不具备的突出优点,所以汇编语言的应用范围还是很广的。特别是当用户需要研究计算机具体的工作原理的时候,还必须要掌握汇编语言。

阅读(4330) | 评论(6)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册