第一章
汇编语言概论
计算机是一种能够 自动、高速处理数据的工具,是 世纪人类最杰 出的科技成就之一。
一个完整的计算机系统应包括硬件和软件两大部分,它的组成如下:
中央处理器
硬件 存储器(主存和辅存 )
输入设备
计算机系统
输 出设备
系统软件
软件
应用软件
硬件是指计算机 的机器部分,即我们所见到的物理设备和器件 的总称 。软件通常指计
算机系统中的程序和数据 ,并按功能分为系统软件和应用软件两类 。系统软件指的是计算
机系统管理和使用必须配置 的那部分软件 ,如:操作系统、汇编程序 、编译程序等 。应用
软件是指针对某类专 门应用 的需要而编写或配置 的软件 。硬件是计算机 的物质基础 ,软件
是建立在硬件基础之上 的,对硬件功能的扩充与完善 ,两者缺一不可 。没有软件 ,计算机
硬件难以工作;没有硬件,软件的功能也不能实现。
汇编语言简介
为 了处理和解决实际问题 ,每一种计算机都具有其特定 的功能,而这些功能是通过计
算机执行一系列相应 的操作来实现 的。计算机所能执行的每一种操作 ,称为一条指令 。计
算机能够执行的全部指令集合 ,就是该计算机 的指令系统 。由于计算机硬件 的器件特性,
决定了计算机本身只能直接接受 由 和 编码的二进制指令和数据 ,这种二进制形式的指
令集合就称之为该计算机 的机器语言,它是计算机唯一能够直接识别并接受的语言 。而计
算机程序就是人们编写的指挥和控制计算机完成某一任务 的指令序列,这个指令序列就是
对要解决 问题 的各个对象和处理规则的描述 。用机器语言编写程序很不方便并容易出错 ,
编写出来 的程序也难 以调试 、阅读和交流 。为此 ,出现 了用助记符代替机器语言二进制编
码的另外一种语言,这就是汇编语言。
汇编语言是建立在机器语言之上 的,因为它是机器语言的符号化形式,所 以较机器语
言直观 ,但是计算机并不能够直接识别这种符号化语言,用汇编语言编写的程序必须翻译
成机器语言之后才能执行 ,这种 “翻译 ”是通过专 门的软件 汇编程序实现 的。因此,
汇编语言程序 的执行需要分成两个阶段 :汇编阶段和运行阶段 。汇编阶段仅把汇编源程序
汇编成为机器语言程序,运行阶段才真正执行这个机器语言程序 (见图
图 汇编过程
早期 的计算机其功能相对较弱,指令系统也 比较简单 ,有些计算机甚至没有乘、除法
指令 ,而是通过加法和减法编制乘 、除法子程序来实现 的。并且 ,与之对应 的汇编语言也
比较简单 ,几乎完全成 了机器语言的翻版 。这时的汇编语言,一方面显示 出了它 日益强大
的生命力和不可替代 的重要性 ;另一方面又暴露出不少 问题 。第一,汇编语言的程序环境
较差 。如汇编语言程序和数据在 内存 中的分配和管理,都需要编程人员事先予 以安排 ,因
此要 了解 内存 的使用情况 ,无疑给编程人员带来很大的麻烦 。第二,汇编语言指令与机器
语言指令一一对应 的方式使得汇编语言不够灵活 。例如 ,对经常使用 的同样一组汇编指令
是否能用一条宏指令代替 ?使得这条宏指令对应几条甚至几十条机器指令 ,以降低编程强
度 。第三 ,汇编语言是面 向具体计算机 的,这种依赖具体机器 的性质决定 了各种不 同计算
机上 的汇编语言很难相 同。所 以,一种计算机上 的汇编语言程序难 以移到另外一种计算机
上运行,这种面 向具体机器的特性给汇编语言的学习和交流带来许多不便。
随着计算机 的不断发展 ,计算机