汇编程序

为计算机系列设计的语言
汇编程序(assember)是指把汇编语言书写的源程序翻译成等价的机器语言程序的处理系统。汇编程序以汇编语言书写的源程序作为输入,以机器语言表示的目标程序作为输出。汇编程序主要有模块汇编程序、宏汇编程序、高级汇编程序、条件汇编程序等。[1]

背景信息

把汇编语言书写的程序翻译成与之等价的机器语言程序的翻译程序。汇编程序输入的是用汇编语言书写的源程序,输出的是用机器语言表示的目标程序。汇编语言是为特定计算机或计算机系列设计的一种面向机器的语言,由汇编执行指令和汇编伪指令组成。汇编执行指令是机器指令的符号化表示,其操作码用记忆符表示,地址码直接用标号、变量名字、常数等表示。汇编执行指令经汇编程序翻译为机器指令,二者之间基本上保持一一对应的关系。汇编伪指令又称作汇编指示,用于向汇编程序提供用户自定义的符号、数据的类型、数据空间的长度,以及目标程序的格式、存放位置等提示性信息,其作用是指示汇编程序如何进行汇编。采用汇编语言编写程序虽不如高级程序设计语言简便、直观,但是汇编出的目标程序占用内存较少、运行效率较高,且能直接引用计算机的各种设备资源。它通常用于编写系统的核心部分程序,或编写需要耗费大量运行时间和实时性要求较高的程序段。
发展过程汇编程序的雏型是在电子离散时序自动计算机 EDSAC上研制成功的。这种系统的特征是用户程序中的指令由单字母指令码、十进制地址和终结字母组成。第一个汇编程序是符号优化汇编程序(SOAP)系统,它是50年代中期为IBM650计算机研制的。这种计算机用磁鼓作存储器,每条指令指出后继指令在磁鼓中的位置。当初研制SOAP系统的动机不是引入汇编语言的符号化特色,而是为了集中解决指令在磁鼓中合理分布的问题,以提高程序的运行效率。IBM704计算机的符号汇编程序(SAP)是汇编程序发展中的一个重要里程碑。此后的汇编程序大都以这一系统为模型,其主要特征至今未发生本质的变化。随着计算机软件的高速发展和广泛应用,汇编程序又吸收了宏加工程序、高级语言翻译程序等系统的一些优点,相继研制出宏汇编程序、高级汇编程序。
分类汇编程序分为简单汇编程序、模块汇编程序、条件汇编程序、宏汇编程序和高级汇编程序等。